這是我的第一個SO問題,因爲我老實無法找出造成這個問題的原因,並且它讓我感到瘋狂,因爲如果我無法在第一天之後重新連接,我無法進行測試失敗的嘗試!XMLHTTPRequest因CORS導致IP禁止失敗
我有一個HTML我的本地計算機上運行(本地主機):
var xhr = new XMLHttpRequest();
xhr.open('POST', 'http://hostedDomain.com/myBackendScript.php', true);
xhr.onload = function (e) {
console.log(this.responseText);
};
xhr.send();
在託管服務器(我沒有獲得php.ini
,.htaccess
,.httpd.conf
等),myBackendScript.php
很簡單:
<?php
header("Access-Control-Allow-Origin: *"); //Note: I am not asking about how to configure Access-Control-Allow-Origin
echo "Server Response";
?>
步驟來重現問題:
- 衝浪hostedDomain它返回指數
- 衝浪hostedDomain/myBackendScript.php並返回「服務器響應」
- 運行localhost的HTML,它失敗,出現錯誤CORS(「訪問控制允許來源不在瀏覽器控制檯中看到「」403 Forbidden「)[注意:我不是在詢問如何配置訪問控制 - 允許來源]
- Surf to hostedDomain不再有效(連接超時)
- 切換到另一個網絡(更改公共IP,使用同一臺計算機) - surf to hostedDomain再次運行
- 等待一個公司幾天的時間,我可以再次連接到hostedDomain。
注意:我不是在問關於CORS本身或關於如何配置Access-Control-Allow-Origin;我在詢問爲什麼在XMLHTTPRequest的第一次初始失敗嘗試以及停止此臨時「禁止」的潛在解決方案之後,我無法連接到hostedDomain。
我有一種感覺,它與服務器配置有關;但我不知道如何進一步...
檢查您的瀏覽器開發工具網絡選項卡中的XHR請求 - 它實際上是否獲得該cors標頭? –
嘗試使用這個更高級的php CORS設置http://stackoverflow.com/a/9866124/1175966有限的訪問問題,雖然很奇怪 – charlietfl
也與主機檢查。可能是一些安全功能,將您鎖定出 – charlietfl