Apache精确网址

时间:2013-04-11 20:20:18

标签: apache

我有以下apache配置:

 <VirtualHost *:80>

    ServerName someUrl

    DocumentRoot /usr/local/upload
 </VirtualHost>

这可行但可以访问所有内容。该目录中有图片。是否可以使其成为访问权限所需的确切URL?

例如:

 http://someUrl.com/image.jpg

允许您查看图像,但是:

 http://someUrl.com/

会给出405。

2 个答案:

答案 0 :(得分:1)

您需要禁用目录上的索引。您的配置如下所示:

<VirtualHost *:80>

    ServerName someUrl

    DocumentRoot /usr/local/upload
    <Directory /usr/local/upload>
        Options -Indexes
    </Directory>
</VirtualHost>

这将为您提供目录请求的标准403 Forbidden响应。

答案 1 :(得分:1)

不确定为什么你想要一个“ 405 Method Not Allowed ”错误,但是一种方法是使用mod_rewrite的R标志:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L,R=405]