パケット キャプチャ ソフトウェア fiddler を上手に活用して、discuz での画像アップロードのブラウザ互換性の問題を解決してください
discuz がさまざまなブラウザーで画像を正常にアップロードする前は、ある日突然、IE で画像を正しくアップロードできなくなり、Flash プラグインを介して画像をアップロードすると、404 エラーが報告されました。
Chrome ブラウザまたは 360 スピードで正しく送信できます。最初は送信ハンドラーの問題ではないかと思いましたが、印刷デバッグを中断しても確認できませんでした。 Chrome の場合、毎回成功するため、同時実行によるサーバー負荷の高さの問題は解消されます。ふと、ブラウザごとに送信されるヘッダー情報が違うのではないかと考えたのですが、それが関係しているのかもしれません。
パケットを 2 回キャプチャしてリクエスト パケットを比較しました。
ユーザー エージェントが異なることがわかりました。IE のユーザー エージェントは Shockwave Flash ですが、Chrome のユーザー エージェントは Web ページにアクセスするための通常の値です。これが問題なのかと思い、ユーザーエージェントをShockwave Flashとして使用してホームページにアクセスしたところ、予想どおりの解決策があり、同じ404エラーが返されました。
これにより、Shockwave Flash がサーバー上またはプログラム内でブロックされていることがわかります。まずサーバーの設定ファイルをチェックしたところ、案の定、Flash と一部の一般的ではないロボット ユーザー エージェントがブロックされていました。この問題は、ブロックされたキーワードを削除し、サービスを再起動することで解決されました。
これは、同様の問題に対処する方法の記録です。まず、安定性の問題が解決され、次にプログラムの問題が解決されました。シミュレーション リクエストを通じて、ユーザー エージェントが Shockwave Flash であることが判明し、ブロックされたレコードがシステムからクエリされました。