[英]htaccess deny all at root, allow access matching url after a rewrite
我试图在共享主机上保护应用程序,我只能写.htaccess文件。 一切都在公共文件夹www。
我想限制只访问一个子目录,同时禁止访问所有其他子目录。 我还希望根URL http://<domain>/
显示该允许目录的内容。
www/
├── ...
├── private/
├── public/ (I want to allow access to this one only)
└── .htaccess
到目前为止,我的.htaccess
看起来像这样:
RewriteEngine on
RewriteRule ^(.*)$ /public/$1 [R]
Order allow,deny
Deny from all
<Files "/public/*">
Allow from all
</Files>
有了这个,如果我去访问http://<domain>/public
一切正常。 但是,如果我去http://<domain>/
我得到403拒绝访问。
如何重定向根URL以显示我的公用文件夹的内容,同时仍拒绝访问根目录中的所有其他内容?
你可以使用这个htaccess
RewriteEngine on
RewriteRule ^$ /public/ [L,R]
RewriteRule !public - [R=403]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.