用户身份验证和mod_rewrite

时间:2012-09-22 01:41:07

标签: .htaccess mod-rewrite basic-authentication

如何让mod_rewrite和用户身份验证协同工作?我试过这个,但它只是给了我一个“没有指定输入文件” - 当我删除身份验证时,它有效,所以我找到了问题,但我自己无法解决。

DirectoryIndex index.html index.php

AuthName "Something"
AuthType Basic
AuthUserFile /.htpasswd

require valid-user

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s

RewriteRule ^(.*)$ index.php?url=$1 [PT,L]

</IfModule>

提前致谢:)

1 个答案:

答案 0 :(得分:0)

在您的规则中添加RewriteBase

RewriteEngine On

RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s

RewriteRule ^(.*)$ index.php?url=$1 [PT,L]

或者您可以尝试添加前导斜杠或index.php的路径。