我試圖通過ajax將數據加載到jQuery對話框中,但Firefox中的請求失敗(34.0.5).工作正常,我在Chrome和Safari中沒有任何抱怨.
我的apache conf包含:
Header set Access-Control-Allow-Origin "*"
mmf無法打開,Header set Access-Control-Allow-Methods: "PUT, GET, POST, DELETE, OPTIONS"
Header set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept"
jQuery很簡單:
$('#dialog').load('example.php', function() { $('#dialog').dialog('open'); });
win10各種應用無法打開、Firefox響應以下控制臺錯誤:
跨源請求已阻止:同源策略禁止在http://www.example.com/example.php上讀取遠程資源.這可以通過將資源移動到同一域或啟用CORS來解決.
檢查來自ajax請求的響應頭,它們似乎都是完整的,并且與apache中聲明的內容一致.我是否應該包含一些其他指令或以某種方式更改配置以使其工作?
更新:問題的根源在于我希望example.com和www.example.com都能發揮相同的作用.有問題的網站標題中始終有一個標記< base href =“www.example.com”/>在這兩個實例中,因為這是默認站點框架的一部分.我已經發現刪除此鏈接允許ajax請求在example.com上工作,即使它仍然專門從www子域調用資源.
電腦文件無法打開,有趣的是,刪除此標記時,請求和響應標頭的許多方面都會發生變化.對于任何可能對這里的含義有所了解的人我都會在下面粘貼請求和響應標頭.
以下是帶< base>的標頭標簽已刪除.在這種情況下,ajax調用成功:
響應
HTTP/1.1 200 OK
php瀏覽器訪問不顯示,Date: Sun, 18 Jan 2015 22:11:04 GMT
Server: Apache/2.4.7 (Ubuntu)
X-Powered-By: PHP/5.5.9-1ubuntu4.5
Set-Cookie: PHPSESSID=xxx; path=/; HttpOnly
火狐瀏覽器javascript怎么開啟。language=en; expires=Tue, 17-Feb-2015 22:11:04 GMT; Max-Age=2592000; path=/; domain=www.example.com
currency=CAD; expires=Tue, 17-Feb-2015 22:11:04 GMT; Max-Age=2592000; path=/; domain=www.example.com
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0, public
火狐javascript怎么開啟,Pragma: no-cache
Content-Encoding: gzip
access-control-allow-methods: PUT, GET, POST, DELETE, OPTIONS
access-control-allow-origin: *
php文件怎么打開運行。access-control-allow-headers: Origin, X-Requested-With, Content-Type, Accept
Content-Length: 1515
Connection: close
Content-Type: text/html; charset=utf-8
火狐瀏覽器關閉javascript,請求
GET /example.php HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:34.0) Gecko/20100101 Firefox/34.0 FirePHP/0.7.4
php代碼怎么運行,Accept: text/html, */*; q=0.01
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://example.com/
php項目運行,Origin: http://example.com
x-insight: activate
Connection: keep-alive
Cache-Control: max-age=0
以下是< base>的標題標簽完整.這些標頭反映了ajax調用失敗的情況.值得注意的是,響應標題中的“位置”字段顯示為“https”,即使這不是通過https連接發生的:
響應
HTTP/1.1 302 Found
Date: Sun, 18 Jan 2015 22:12:26 GMT
Server: Apache/2.4.7 (Ubuntu)
X-Powered-By: PHP/5.5.9-1ubuntu4.5
Set-Cookie: PHPSESSID=xxx; path=/; HttpOnly
language=en; expires=Tue, 17-Feb-2015 22:12:26 GMT; Max-Age=2592000; path=/; domain=www.example.com
currency=CAD; expires=Tue, 17-Feb-2015 22:12:26 GMT; Max-Age=2592000; path=/; domain=www.example.com
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0, public
Pragma: no-cache
Status: 302
Location: https://www.example.com/index.php
access-control-allow-methods: PUT, GET, POST, DELETE, OPTIONS
access-control-allow-origin: *
access-control-allow-headers: Origin, X-Requested-With, Content-Type, Accept
Content-Length: 0
Connection: close
Content-Type: text/html
請求
OPTIONS /example.php HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:34.0) Gecko/20100101 Firefox/34.0 FirePHP/0.7.4
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Origin: http://example.com
Access-Control-Request-Method: GET
Access-Control-Request-Headers: x-requested-with
x-insight: activate
Connection: keep-alive
Cache-Control: max-age=0
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态