1

AMP サーバー (Apache 1.3、MySQL 5.0、PHP 5.1.5) を使用していますが、ブラウザーごとに一度に 1 つの接続/要求しか許可されないことがわかりました。これを再現する最も簡単な方法は、PHP を介して渡される大規模なダウンロードを要求し、同時に別のページにアクセスしようとすることです。他のページが読み込まれる前に、最初のリクエスト (ファイルのダウンロード) が完了するのを待つことになります。

問題が Apache なのか、MySQL なのか、PHP なのかわかりません。どこから探し始めるべきか、何かアイデアはありますか?

同じコンピューター上の他のブラウザーを介して他の要求を行うことができます。

4

2 に答える 2

3

PHP セッションを使用している場合、セッション ファイルがロックされていることが原因である可能性があります。同時書き込みによるセッション ファイルの破損を防ぐため、一度に実行できるスクリプトはセッションごとに 1 つだけです。これは、後続のリクエストが最初のリクエストが終了するまで待たなければならないことを意味します。

スクリプトが終了すると、セッションは自動的に書き込まれますが、 を呼び出すことで、これをより早く行うことができますsession_write_close()。実行に時間がかかるスクリプトを作成している場合は、セッション データにアクセスする必要がなくなったらすぐにこれを呼び出すことをお勧めします。

こちらのドキュメントにこれについての説明があります

于 2008-12-27T21:00:32.190 に答える
0

私はApacheの設定を調べ始めます。MaxClients が 1 に設定されている可能性がありますか?

于 2008-12-27T20:35:45.283 に答える