【发布时间】:2011-05-26 12:27:56
【问题描述】:
我在名为 kopernikus.science.net 的服务器上有一个 JavaScript,它想要访问另一个名为 galileo.science.net 的服务器上的文件。这是我想到的一个玩具示例:
code residing on http://kopernikus.science.net/makecalendar.js :
var request = new XMLHttpRequest();
request.open("GET","galileo.science.net/calendar", false);
request.send(null);
document.getElementById("calendar").innerHTML =
"<div>" + request.responseText.split('\n')[0] + "</div>";
不幸的是,由于现代网络浏览器的“同源策略”,脚本被禁止访问不同域上的数据。
当然,我的问题是:
我怎样才能访问远程文件?
允许使用 JavaScript 之外的解决方案,例如镜像相关文件或调整
.htaccess。我有哪些选择?哪个对 Web 服务器的权限要求最少?
有问题的文件是一个 vcalendar 格式的日历,它会定期更改。我在共享主机上,没有系统管理员权限,但我可以运行 PHP 和 CGI 脚本,并且可以更改 .htaccess 文件的某些部分。
【问题讨论】:
-
如果你显示的域名是真实的,你应该可以使用
document.domain:developer.mozilla.org/en/document.domain
标签: php javascript ajax .htaccess cgi