我正在构建一个ajax/PHP脚本,我想出了一些方法来保护外部访问的ajax文件,我的意思是限制脚本的执行从另一个服务器(和域)。我正在使用JQuery $ajax
发布到PHP文件。限制一个PHP脚本执行到一个引用
这里是PHP文件:
<?php
$config["url"]="mysite.com";
if (isset($_SERVER["HTTP_REFERER"])) {
$url = parse_url($_SERVER["HTTP_REFERER"]);
if ($url["host"] != $config["url"]) {
echo "You don't have access to this file.";
exit;
} else {
//Run The script
}
}
?>
基本上这是什么脚本做的是,它引用站点和域相匹配。如果脚本不匹配,该脚本将退出,如果有脚本则会运行。所以脚本只能从mysite.com
执行,而不能从别处执行。
我不是PHP/Javascript专家,所以任何人都可以告诉我这是好还是不好,以及它在某些情况下会失败?
http://codereview.stackexchange.com/ –
使用会话... – dqhendricks