单个.htaccess重写的密码保护

时间:2014-01-21 21:05:05

标签: .htaccess url rewrite prestashop .htpasswd

我需要为单个网站提供密码保护。这是一个seo友好的网址: 默认路径为:

http://www.website-url.com/index.php?id_cms=xx&controller=cms

这是seo url:

http://www.website-url.com/content/xx-login

我已经有了.htaccess和.htpasswd,但是如何仅为此网址指定.htaccess中的重写?我试过这个:

<filesMatch "http://www.website-url.com/content/xx-login">
IndexIgnore .htaccess .htpasswd
AuthUserFile /absolut_path/.htpasswd
AuthName "Login"
AuthType Basic
require valid-user
</filesMatch>

我正在使用Prestashop。

1 个答案:

答案 0 :(得分:1)

FilesMatch不能以这种方式工作,您可以尝试使用SetEnvIf来绕过Auth,除非URI是特定的(我收集的是你想要做的):

IndexIgnore .htaccess .htpasswd

SetEnvIfNoCase Request_URI "^/content/xx-login" SECURED

# enforce auth if SECURED
AuthType Basic
AuthName "Login"
AuthUserFile /absolut_path/.htpasswd
Require valid-user
Order allow,deny
Allow from env=!SECURED
Satisfy any