none
IE11 リダイレクト後 保留中のまま RRS feed

  • 質問

  • 初めまして

    早速質問させていただきます。

    OS:Win10 64bit

    Webサーバー:Apache/2.4.39 (Win64) OpenSSL/1.0.2s

    PHP:7.1.31

    ブラウザ:IE11の11.836.18362.0

    現象:A画面にPOSTした後に、PHP側はB画面に307でリダイレクトすると、画面上は、何もエラーがなかったですが、開発ツールでは、

    A画面  POST 307

    B画面  GET  保留中

    B画面はずっと「保留中」状態になりました。また、307は、リダイレクト前のメソッド(POST)のままで次のリクエストに引継ぎだそうですが、IEの場合、仕様が異なるのでしょうか。

    ちなみに、同じ状態で、FireFoxで確認すると、

    A画面  POST 307

    B画面  POST 200

    ちゃんと、想定の通りで動作しています。

    原因をお客様に説明できず、困っています。助けてください。

    2020年5月31日 7:31

すべての返信

  • epkhqさん、こんにちは。フォーラムオペレーターのHarukaです。
    MSDNフォーラムにご投稿くださいましてありがとうございます。

    IE 11のコンソールにどんなエラーがありますかをご確認いただけますでしょうか。
    また、Fiddlerを使用し、ネットワークトラフィックを追跡して、詳細を表示することをお勧めします。

    この問題はCORSが原因である可能性があります。 
    CORSを使用して信頼できないオリジンを要求すると、IEはGET要求のみを送信し、他の要求の失敗につながります。 

    IEは拡張保護モードを使用しているため、結果は次のように:
    サイトが信頼できる場合は、OPTIONSとGETの2つの要求が行われますが、信頼できない場合は、GET要求のみが行われ、失敗します。

    どうぞよろしくお願いいたします。

    MSDN/ TechNet Community Support Haruka
    ~参考になった投稿には「回答としてマーク」をご設定ください。なかった場合は「回答としてマークされていない」も設定できます。同じ問題で後から参照した方が、情報を見つけやすくなりますので、 ご協力くださいますようお願いいたします。また、MSDNサポートに賛辞や苦情がある場合は、MSDNFSF@microsoft.comまでお気軽にお問い合わせください。~

    2020年6月2日 5:34
    モデレータ
  • Haruka様

    ご回答ありがとうございます。

    ほかの仕事に取られて、返信が遅れて大変申し訳ございません。

    こちらはイントラネット環境を使ってテストを行っておりますので、jsやcssなどはローカルのリソースを使用して、またFiddlerの追跡結果にも外部サイトへのアクセスがなかったため、CORSや拡張保護モードを使用していませんでした。

    また、Fiddlerで確認した結果は

    ■A画面  POST 307

    -------------------------------------------------------------------------------

    POST http://localhost/webroot/app/portal/get-list/send HTTP/1.1
    Accept: text/html, application/xhtml+xml, image/jxr, */*
    Referer: http://localhost/webroot/app/portal/search-list?id=1234
    Accept-Language: ja
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
    Content-Type: application/x-www-form-urlencoded
    Accept-Encoding: gzip, deflate
    Content-Length: 623
    Host: localhost
    Connection: Keep-Alive
    Pragma: no-cache
    Cookie: test_session=xxxxxxxx

    formdata1=xxx&formdata2=yyy

    -------------------------------------------------------------------------------


    ■B画面  POST  200

    -------------------------------------------------------------------------------

    POST http://localhost/webroot/app/portal/peson-reg/update HTTP/1.1
    Accept: text/html, application/xhtml+xml, image/jxr, */*
    Referer: http://localhost/webroot/app/portal/search-list?id=1234
    Accept-Language: ja
    User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko
    Content-Type: application/x-www-form-urlencoded
    Accept-Encoding: gzip, deflate
    Content-Length: 623
    Host: localhost
    Connection: Keep-Alive
    Pragma: no-cache
    Cookie: test_session=xxxxxxxx

    formdata1=xxx&formdata2=yyy

    -------------------------------------------------------------------------------

    となり、B画面は、GET 保留中ではなく、POST、200でした。

    お忙しいところ恐縮ですが、ほかに考えられる原因はあれば、ご教授いただけますでしょうか。

    以上です。
    2020年7月6日 1:21