言語/ツールのバージョン:
問題:
すべてのXHRリクエストのAPIとしてPHPアプリケーションを使用するAngular2アプリケーションがあります。アプリケーションは正常に動作しますが、Chromeで_Use a prediction service to load pages more quickly
_オプションが有効になっている場合、コンポーネントのngOnInit()
内で送信されたHTTPリクエストがリロードされ、非常に長い間スタックします。リクエストは10秒から2分3秒などで解決するか、別のリクエストを送信するとリクエストも解決します(たとえば、DOMのクリックイベントでのリクエスト)
私が試したもの:
GET
リクエストを表示し、解決したら待機し続け、成功したOPTIONS
リクエストがあり、成功したGET
があります。http://api.randomuser.me/
_この場合、リクエストは遅滞なく成功します(ただし、CORSエラーが表示されます)。また、仮想ホスト構成を共有したいと思います。そこで問題が見つかった場合:
_<VirtualHost *:80>
ServerName someName.api
DocumentRoot path_to_public_dir
SetEnv APPLICATION_ENV development
<Directory path_to_public_dir>
SetEnvIf Origin "http(s)?://(www\.)?(local\.)?(localhost:4200|someDomain.com)$" AccessControlAllowOrigin=$0
Header always set Access-Control-Allow-Origin %{AccessControlAllowOrigin}e env=AccessControlAllowOrigin
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} –d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]
Options -Indexes +MultiViews +FollowSymLinks
AllowOverride none
Order Allow,Deny
Allow from all
</Directory>
_
ご注意ください:
Access-Control-Allow-Origin
_ヘッダーを設定しようとしましたが、まだ運がありません。そのような行動の原因として考えられるものについてのあなたの提案/回答は本当に役立つでしょう。
まあ、私は、次のことをすることで私のマシンからラグが取り除かれたと思う。
ソリューションの前に、私の仮定はここにあります:
解決:
Apacheの mpm
モジュールファイルを含めました。 _httpd.conf
_ファイルに次の行があります。
_#Include conf/extra/httpd-mpm.conf
_そしてコメント解除します。
Windowsはmpmに mpm_winnt_module を使用します。
このマルチプロセッシングモジュール(MPM)は、Windows NTオペレーティングシステムのデフォルトです。単一の子プロセスを起動する単一の制御プロセスを使用して、要求を処理するスレッドを作成します
以下の行を見つけてコメント解除します。
_EnableMMAP off
EnableSendfile on
AcceptFilter http none
AcceptFilter https none
#Extra Notes
#mmap is memory map by Apache, don't know I have uncommented this, had read about
this somewhere, but anyway its Off so should not be a Burden on OS
#EnableSendFile:Delivering static files? This link may help:
https://groups.drupal.org/node/68333
#AcceptFilter: windows mpm module, suggests to keep it as none.
I went through this : https://httpd.Apache.org/docs/2.4/mod/core.html
and have set AcceptFilter http/https as "connect", it works fine for me.
Please note: I am using Apache 2.4.23
_
それでおしまい!
私はこの質問を受け入れられないものとして残しています:
winnt
モジュールを有効にしましたが、Apacheディレクトリのどこにもモジュールファイルが見つかりませんでした。ThreadsPerChildの変更は反映されますが、Apacheは外部winnt
モジュールを必要としないと思います。failed and finshed
_リクエストがmy chrome console。あなたの答えは本当に価値があり、物事をより明確にします。
この問題は、インターネットの速度が遅いために発生します。onInit()が呼び出されると、すべてのWebサービスがロードされ、最初のWebサービスの完了を待ちます。したがって、ネットワークのステータス列に「保留中」と表示されます