the*_*rce 6 apache .htaccess basic-authentication
我整个早上一直在摆弄这个,我真的希望有人可以帮助我.我的网站上有一个目录,只有管理员必须能够访问.所以我使用.htaccess文件密码保护它.但我希望index.php仍然可以访问.
所以我尝试过:
AuthUserFile "/home/example.com/passwords/.htpasswd"
AuthType Basic
AuthName "Admin"
require valid-user
<FilesMatch "^index\.php$">
Satisfy Any
Allow from all
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
是的,它是有效的,但只有在URL中明确指定index.php:
http://www.example.com/admin/index.php - >好的
http://www.example.com/admin/ - > Popup哭着登录
http://www.example.com/admin - > Popup哭着登录
所以我继续修改了正则表达式:
<FilesMatch "^(|index\.php)$">
Satisfy Any
Allow from all
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
不是我写过的最好的正则表达式但是嘿有一些结果:
http://www.example.com/admin/index.php - >好的
http://www.example.com/admin/ - >好的
http://www.example.com/admin - > Popup哭着登录
我只是不明白为什么这不起作用.我也试过像这样扭转整个事情:
AuthUserFile "/home/example.com/passwords/.htpasswd"
AuthType Basic
AuthName "Admin"
<FilesMatch "^(?!index\.php).+$">
require valid-user
</FilesMatch>
Run Code Online (Sandbox Code Playgroud)
但又无济于事......任何人都能看到解决方案?
小智 0
我不知道如何允许对http://www.example.com/admin的访问 ,但您可以通过将访问重定向到 index.php 来避免调用该目录,如下所示:
RewriteRule ^admin$ admin/index.php
Run Code Online (Sandbox Code Playgroud)
或者如果您需要获取参数
RewriteRule ^admin\/?\?([^#]*)$ admin/index.php?$1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
755 次 |
| 最近记录: |