尝试访问dir时,htaccess重定向索引文件

时间:2014-01-13 21:27:50

标签: perl apache .htaccess

尝试拒绝访问除index.pl以外的所有文件。首先,我拒绝所有,之后允许访问index.pl。下一个代码可以正常工作。

Order Allow,Deny
Deny from all
<Files "index.pl">
    Order Deny,Allow
    Allow from all
</Files>

但添加.htaccess文件后,此内容出现以下问题: 当我尝试访问 mysite.com / (没有index.pl)时,服务器说这是禁止的。

我尝试添加DirectoryIndex index.pl,代码已经变为:

Order Allow,Deny
Deny from all
<Files "index.pl">
    Order Deny,Allow
    Allow from all
</Files>

DirectoryIndex index.pl

它没有帮助我。

我必须在文件中编写限制除index.pl和site之外的所有文件才能正常工作而不添加/index.pl链接?也许有另一种方法可以做我想做的事情?

2 个答案:

答案 0 :(得分:2)

尝试将<Files>块更改为<FilesMatch>并将index.pl设为可选:

<FilesMatch "^(index.pl)?$">
    Order Deny,Allow
    Allow from all
</FilesMatch>

答案 1 :(得分:1)

使用mod_rewrite规则进行更精细的控制。请在DOCUMENT_ROOT/.htaccess文件中试用此代码:

RewriteEngine On

RewriteCond %{REQUEST_URI} !\.(jpe?g|gif|bmp|png|tiff|css|js)$ [NC]
RewriteRule ^(?!(index|search)\.pl).+$ - [F,NC]