系统:Windows
如果你是用phpstudy来进行lnmp的集成环境,你想解决跨域问题是很简单的:
处理步骤:
第一步:找到你前端要请求的后端接口的url的域名:
比如:http://localhost2/index.php/index/test/helloworld 那么域名就是localhost2
第二步:找到域名对应的nginx配置文件位置
打开phpstudy
进入conf目录
进入vhosts目录
找到域名对应的配置文件了
步骤三:修改该配置文件,并重启!!!重启!!!
先复制这段配置项
add_header Access-Control-Allow-Origin *; add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS'; add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization'; if ($request_method = 'OPTIONS') { return 204; }
粘贴在红框标志处,并保存。
然后重启nginx
重新请求接口就返回正常结果了,反正我是这样哈~
补充:
1.关于什么是跨域问题:
从一个域名的网页去请求另一个域名的资源。本质上对于此类请求,只要协议、域名、端口有任何一个的不同,就被当作是跨域,即都被当成不同源。(出自文档)
2.关于复制粘贴的那段配置是什么意思↓
Nginx配置跨域请求Access-Control-Allow-Origin * 详解