關於ajax請求跨域問題解決
阿新 • • 發佈:2018-11-07
一、直接在伺服器的站點配置中設定允許跨域:
1. ubuntu-apache如何解決跨域資源訪問參考:http://blog.csdn.net/emily201314/article/details/52877277
步驟1 #開啟apache的headers模組
sudo a2enmod headers
步驟2 #修改配置檔案
<VirtualHost *:80> ServerName www.api.com DocumentRoot /xxx
#對所有域名開放
Header set Access-Control-Allow-Origin *
#對指定域名開放
Header set Access-Control-Allow-Origin http://www.ivhong.com
</VirtualHost>步驟3 #重啟服務
sudo service apache2 restart
測試跨域訪問即可
2. nginx中配置跨域支援功能 2016-03-16 14:16:13分類: LINUX
http {
......
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Headers X-Requested-With;
add_header Access-Control-Allow-Methods GET,POST,OPTIONS;
......
}
這樣就可以實現GET,POST,OPTIONS的跨域請求的支援
也可以 add_header Access-Control-Allow-Origin http://test.51testing.com; --指定允許的url;
二、服務端程式程式碼裡面,新增允許跨域: 跨域訪問,ajax php
跨域核心程式碼(根據自己需求選擇header)
- // 允許 baidu.com 發起的跨域請求
- header("Access-Control-Allow-Origin: baidu.com");
- //如果需要設定允許所有域名發起的跨域請求,可以使用萬用字元 *
- header("Access-Control-Allow-Origin: *");
- public function callback(){
- header("Access-Control-Allow-Origin: *");
- echo '你的程式碼,推薦使用json資料';
- }