Ajax访问PHP页面出现的跨域问题

时间:2021-04-08 21:03:37

1.跨域问题:简单来说就是A域名下的程序想从B域名下的文件里面获取信息(这句话是我上网看到的)

2.一般请求(本地测试):
  请求页
  Ajax访问PHP页面出现的跨域问题
  响应页
  Ajax访问PHP页面出现的跨域问题
 
    这样做是没问题的。
  但我如果将Ajax请求的url修改成http://127.0.0.1/TestJQ/Test1/ajax.php,就会出问题了
   
Ajax访问PHP页面出现的跨域问题
  控制台会报出XMLHttpRequest cannot load http://127.0.0.1/TestJQ/Test1/ajax.php. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost' is therefore not allowed access.的错误提示了,这就是跨域问题导致的
  针对这样情况,如果我们将响应页加上一个头信息,就可以了
  Ajax访问PHP页面出现的跨域问题
  当然了,header("Access-Control-Allow-Origin: *");中的“*”表示对所有网站的请求都允许
  我们也可以使用指定的网址,表示只有这些网站的请求才被允许
  
  事实上呢,为什么URL改写成http://127.0.0.1/TestJQ/Test1/ajax.php就会造成跨域,我其实还是搞不清楚的,毕竟请求页和响应页都是在我电脑的Apache服务器目录下的,还麻烦有大神路过指点,谢谢~~