ajax因基于www存在的跨域问题而失败

时间:2014-05-20 18:09:02

标签: ajax http xmlhttprequest cross-domain

问题很简单,但解决这个问题对我来说非常困惑,请帮忙:)。

问题:

进入我的项目网站: duskoflife.com 并登录后,一切正常。

然而!当访问 www.duskoflife.com 并登录时,会出现此错误并且登录失败: XMLHttpRequest无法加载http://duskoflife.com/login.php。请求的资源上不存在“Access-Control-Allow-Origin”标头。因此,不允许原点“http://www.duskoflife.com”访问。

基本上,带有www的那个就好像它是一个不同的网站,我有点理解它为什么会发生,但是如何修复呢?

我的想法:也许在开始时检测访问www.duskoflife.com并将其重定向到duskoflife.com的用户?为什么会有差异?这是一种正确的方法吗?

代码中是否有某个地方我可以让网址都适用于这两个?

如果我是新手,我很抱歉,我很乐意为您提供帮助和解决方案

1 个答案:

答案 0 :(得分:1)

您正在寻找的是CORS。您需要在服务器中启用它。现在要启用cors,您需要修改服务器发送的http响应标头。它通常是两到三行额外代码,具体取决于您的服务器端语言php,.NET等。您可以从以下链接轻松找到代码段:

http://enable-cors.org/server.html

或者,您可以修改.htaccess文件以将www yourdomain.com重定向到yourdomain.com