(Linux + Nginx + MySQL + PHP + Apache) post で 500 エラーが発生する
phpcn_u1582
phpcn_u1582 2017-05-16 13:06:00
0
4
1509

サーバーのインストールでは、oneinstack ワンクリック インストール パッケージ、lnmpa (Linux + Nginx + MySQL + PHP + Apache) https://oneinstack.com/ を使用します。

プログラムは discuz3.2 (http://www.liuxuesheng8.com/) を実行します。

新しい投稿を公開して送信すると、次のメッセージが表示されるエラーが発生しました:

このページは機能しません

bbs.liuxuesheng8.com は現在このリクエストを処理できません。
HTTP エラー 500

< /p>

しかし、コンテンツは確かにデータベースに書き込まれていますが、Web サイトのページを再度開くと、新しい投稿が送信された状態で、上の図に示されているページに留まっています。これは非常に奇妙です。
次に、サーバー ログを確認します。このログは、access_log、post 500 エラーにのみ表示されますが、Apache および openresty ログには対応するエラー ログがありません。この場合、どこで確認できますか? 500の理由はわかりますか? ? ?

 - - [29/Apr/2017:18:27:03 +0800] "POST /forum.php?mod=post&action=newthread&fid=70&extra=&topicsubmit=yes HTTP/1.0" 500 -

< /p>

phpcn_u1582
phpcn_u1582

全員に返信(4)
左手右手慢动作

明らかに、あなたのエラーはnginxに関連しています。

nginx は 500 と表示されますが、一般に次のような状況があります:

  1. ハードディスクの空き容量がいっぱいです (df -lh でディスクの使用状況がチェックされ、nginx が配置されているディレクトリが 100% 占有されています)。 nginx でアクセス ログが有効になっている場合、アクセス ログが必要ないときはアクセス ログを閉じることをお勧めします。アクセスログはハードディスクの容量を多く消費します。

  2. nginx設定ファイルエラー
    書き換えを設定する際、一部のルールが適切に処理されていない場合、500エラーが発生します。独自の書き換えルールを確認してください。構成ファイル内の一部の変数が不適切に設定されている場合、値のない変数を参照するなど、500 エラーも発生します。

  3. 同時実行の問題、サーバーが処理できません
    ファイルオープンハンドルが小さすぎます。サーバーの同時実行テストを行うと、サーバーへの負荷が高いため、一部のリクエストが 500 であることがよくあります。その理由は、 nginx が使用できるファイル ハンドルが小さすぎるため、各リクエストがハンドルを占有します。

いいねを押す +0
某草草

Apacheとphpのエラー出力をオンにします。

いいねを押す +0
Peter_Zhu

Apache、nginx、php のエラー ログには、この post500 エラーに関連するものは何もありません、、、非常に奇妙です

3階の人が言ったことはあり得る

書き換え機能が設定されているため、投稿を開いたときに書き換えが有効にならない場合があります。リンクをもう一度クリックすると、書き換えが有効になります。 。 。理由としては、投稿を送信した後にリンクを書き換える必要があり、現時点ではサーバーが書き換えることができないため、該当ページでスタックしているものの、データはデータベースに書き込まれているためだと推測します

いいねを押す +0
我想大声告诉你

PHP コードはエラーを報告する場合がありますが、設定エラー出力がない場合は 500 エラーも報告します。 PHP エラーをログ形式で出力するように構成を変更してみることができます。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート