問題の説明 - Apache ログ
Apache ログ ファイルで次のような項目を見つけました。
166.147.68.243 [24/Feb/2013:06:06:25 -0500] 19 web-site.com "-" 408 - "-"
カスタムログ形式を持っています。これ408
はステータスを表します。ログ形式は次のとおりです。
LogFormat "%h %t %D %V \"%r\" %>s %b \"%{User-agent}i\"" detailed
通常、ログ ファイルの行は次のようになります。
184.73.232.108 [26/Feb/2013:08:38:16 -0500] 30677 www.site.com "GET /api/search... HTTP/1.1" 200 205 "Zend_Http_Client"
これが、408 エラー行が奇妙に見える理由です。リクエストはログに記録されず、何を最適化する必要があるかわかりません。
質問
問題に取り組む方法は?どのような追加情報またはログを収集する必要がありますか? 問題の原因は何ですか? これはサーバー上で何か問題がありますか?それとも、これは完全にネットワーク接続の問題ですか?
お客様から携帯電話で 408 エラーが発生したとの苦情があったため、この問題に対処しています。ログ ファイルに多くのレコードが見つかりましたが、これをどう処理すればよいかわかりません。
私自身の研究
この件に関しては、すでにいくつかの質問があります。しかし、人々はもっと具体的です。特定のクライアント ソフトウェアやスクリプトに関する問題について話し合うように。ここで、iPhoneでページを開くときにエラーが発生しました。
たとえば、HTTP の 408 Request timeoutでは、POST の前に GET リクエストを実行することをお勧めします。カスタムクライアントがあれば、これを行うことができます。しかし、ユーザーのブラウザの動作を制御することはできません。
推測#1
インターネットを検索して問題について考えていると、https://serverfault.com/questions/383290/too-many-408-error-codes-in-access-logが見つかりました
Timeout
config パラメーターを更新してデフォルト値に戻すことをお勧めします。
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
30 秒で十分だと思ったので、最初に値 30 を試しました。しかし、デフォルト値が 300 秒であっても、引き続きログにエラーが記録されます。私はtail -f
このテキストを書いていたときにそうしましたが、数分で 10 行を超えました。
私には、これは完全な解決策には見えません。