使用htaccess保护ajax文件不被直接调用

时间:2011-12-20 19:25:23

标签: .htaccess protection

为防止我的Ajax文件被直接控制,我这样做了:

我将所有文件放在名为“ajax”的公共目录中,并将其放在同一文件夹中的.htaccess文件中。这是我的目录结构:

/var/www/html/ajax

<Directory "/var/www/html/ajax">
   order allow,deny
   Deny from all
   Allow from 127.0.0.1
</Directory>

但这会产生服务器错误500. .htaccess使用在我的服务器中启用以及mod-rewrite。请帮忙。

2 个答案:

答案 0 :(得分:1)

.htaccess文件中不允许使用Directory指令。见http://httpd.apache.org/docs/2.0/mod/core.html#directory。但是,只需将.haccess中的代码放在/var/www/html/ajax目录中,而不使用Directory指令

,就可以获得相同的结果。
order allow,deny
Deny from all
Allow from 127.0.0.1

答案 1 :(得分:1)

<Directory>.htaccess文件不支持的指令,具体为core and vhost

对于.htaccess文件,该指令是多余的,必须省略,因为该目录由.htaccess文件的位置隐含。

只需删除<Directory>及其结束“标记”即可。