お世話になります。
手がかりになる発想や視点だけでも結構ですので皆様の力をお貸しください。
前提
CentOS7、Apache、mod_wsgi、Django+PythonでWebサーバーを構築しました。
簡単なブログサイトで本番環境にデプロイ済です。
下記手順の①、②で他ブラウザからのアクセスができない状態となるため、これを何とかしたいです。
発生している問題
下記、手順の②でページAのレスポンスが返ってこない理由が分からず、煮詰まっております。
① GoogleChromeでページAにアクセスする。(ページAが表示される)
② GoogleChrome以外のブラウザ(IEやFireFoxなど)でページAにアクセスすると、レスポンスが返ってこない。
③ ①にて自サイトを含む任意のサイトに何かしらリクエストすると、②のページAのレスポンスが返ってきて表示される。
また、①をIEで実施、②をChromeで実施すると②でレスポンスが返ってきます。
試したこと
PythonなのでGIL(シングルプロセス)が関係しているのでしょうか。
試しにwsgi.pyに対して、multiprocessingで確認しようとしましたが良く分からず挫折しました。。。
ブラウザによって挙動が違うのでマルチプロセスにしたところで、解決できないかもしれません。
ApacheやDjangoのログを見ても特にエラー等は出ておらず、目の付け所すらわからなくなっており、もう一週間ほどハマっております。
何かしら手がかりになりそうなことや些細なことでも結構ですのでアドバイスよろしくお願い致します。
追加情報
◆ ①の時点でファビコン(Chromeタブ左上)は回転してなく、チカっとなってバシッとファビコンが表示されています。
◆ ページAと表記していますが、特定のページのみを指しているのではく、
「ページA = 自サイト全てのページ」という意味です。
◆mod_wsgiの設定
デーモンモードにしております。以下、django.conf内です。
Alias /static /var/www/vops/ops/static <Directory /var/www/vops/ops/static> Require all granted </Directory> <Directory /var/www/vops/ops/ops> <Files wsgi.py> Require all granted </Files> </Directory> WSGIDaemonProcess vops user=apache group=apache processes=2 threads=25 maximum-requests=10000 python-path=/var/www/vops:/var/www/vops/lib/python3.6/site-packages WSGIProcessGroup vops WSGIScriptAlias /ops /var/www/vops/ops/ops/wsgi.py
◆Chromeの設定「Enable new preconnect predictor」をDisabledにすると下記挙動に変化する。
(Chromeの履歴(キャッシュ)をクリアした時と同じ挙動となる。)
① ChromeからページAをリクエスト⇒表示される。
② Chrome以外でページAをリクエスト⇒表示される。
③ ChromeからページAをリクエスト⇒表示される。
④ Chrome以外でページAをリクエスト⇒表示されない。(レスポンスが返ってこない)
⑤ ③にて自サイトを含む任意のサイトに何かしらリクエストすると④のレスポンスが返ってくる。
回答3件
あなたの回答
tips
プレビュー