2011-12-01 76 views
0

我的网站(媒体)上有一个我不希望公众访问的文件夹,即使他们知道完整的文件名。限制访问LAMP服务器上的指定目录内的所有文件

我相信这是用chmod控件完成的,但不确定。如何限制访问权限,以便只有我的服务器能够访问目录中的所有内容(css,js,主要是PDF文件)。

回答

1

在你的httpd.conf或包含.conf文件中加入:

<Directory /dir/to/be/protected> 
    AllowOverride None 
    <Limit GET POST OPTIONS> 
     Order deny,allow 
     Deny from all 
    </Limit> 
</Directory> 
+0

优秀 - 正是我期待的。如果你不介意,那么我可以学习,限制部分是做什么的? – JM4

+0

这是一个过滤器,你可以过滤掉你所做或不想发生的任何事情。还有LimitExcept指令,它更多用于确保在此上下文中仅发生X或Y.更多文档:http://httpd.apache.org/docs/2.0/mod/core.html#limit – awm

1

只需添加这到您的.htaccess

Deny from all 
Allow from IP 

更多的信息在这里 http://httpd.apache.org/docs/1.3/mod/mod_access.html

此外,如果你想否认所有的HTTP访问(例如访问用PHP脚本文件这样),那么只需添加拒绝而不允许。

UPD:在你的虚拟主机,你可以这样做

<VirtualHost *:80> 
ServerName domain 
DocumentRoot /var/www/domain/ 
<Directory "/var/www/domain/deny_folder/"> 
Deny from all 
</Directory> 
</VirtualHost> 
+0

我已经这样做了某些网站,但我想限制在HTACCESS中不允许的特定目录。我相信我可以在我的机器上的vhost.conf文件中设置这个设置为限制我的实际IP,但我很好奇是否有更好的方法。 – JM4

+0

我应该先对自己进行真正的测试,但最终还是寻找awm解释的LIMIT函数。 – JM4

相关问题