2017-04-25 10 views
-2

サーバにデータを送信するためにajaxを使用しましたが、localhostではうまく動作しますが、オンラインサーバでエラー500を返します。

これを解決するにはどうすればよいですか? 504として

$('#btn_publier').click(function (e) { 
    var formdata = new FormData(document.getElementById('post')); 
    var file_data = $('#IMG_CDV').prop('files')[0]; 

    formdata.append('file', file_data); 

    $.ajax({ 
    url: '../wp-content/plugins/Carnet_voyages/publier.php', 
    type: 'post', 
    data: formdata, 
    dataType: 'text', // what to expect back from the PHP script, if anything 
    cache: false, 
    contentType: false, 
    processData: false, 
    success: function (result, statut) { // success est toujours en place, bien sûr ! 
     if (result != "") { 
     alert(result); 
     location.reload(); 
     } 
    }, 
    error: function (resultat, statut, erreur) { 
     alert(erreur); 
    } 
    }); 

    e.preventDefault(); 
}); 
+1

エラーは、PHPコードに問題があることを意味します。レスポンステキストまたはサーバーログを確認し、うまくいけばエラーを診断できます。 –

+1

クライアント側のコードを見てサーバエラーを診断できません – charlietfl

+0

適切なwordpress ajaxエンドポイントを使用しています... wp-content/pluginsに移動しません – charlietfl

答えて

0

エラー500は、通常、ページをリロード 2.ブラウザのキャッシュをクリアし 1.を試してみてください内部サーバーエラーから

を発生し、 3.ブラウザのCookieを削除し、 4.トラブルシューティング代わりにゲートウェイタイムアウトエラー またはオンラインサーバーまたはサイト管理者の適切な構成を直接考慮する

助けを借りても:

1)権限エラー。ほとんどの場合、内部サーバーエラー500は、1つまたは複数のファイルまたはフォルダに対する不正なアクセス許可に起因します。そのような場合、PHPとCGIスクリプトに対する誤った許可は責任を負うことです。これらは通常、0775(-rwxr-xr-x)に設定する必要があります。

2) A PHP Timeout. If your script connects to external resources and those resources timeout, an HTTP 500 error can occur. Timeout rules, or better error handling in your script, should help if this is the cause of the 500 error. 

3) A Coding Error in .htaccess. While not as common, be sure to check that your site's .htaccess file is properly structured. 
+0

私の場合は、ローカルリソースからサーバーにファイルをアップロードする必要があるため、私の問題は2)だと思います。これはlocalhostでテストすると完全に動作しますが、オンラインでは動作しません!今、私はサーバーの構成に関する許可を持っていません、私は管理者に連絡しますが、あなたはサーバー上で何を修正するか考えていますか? –

+0

私が見ているコードは問題ありません。あなたが管理者からの返事を受け取るまでは、今は言い訳ができません。おそらく、頻繁に遭遇するエラーである可能性があります。しばらくの間、これらの質問をお聞かせください 1)JavaScriptのプラグインファイルがないか、プラグインファイルのパスが定義されておらず、500の内部サーバーエラーが発生しました。 2)ホスティングサーバーでは大文字と小文字が区別されます。 3)ajaxに移動してフローを警告する場合。 – 12345678

+0

よく私はajaxでよく経験していませんが、スクリプトが現地で何が問題になっているのか分かりません。ローカルとexternatのサーバーアーキテクチャはsimularではありませんか? –

関連する問題