我正在尝试在共享主机上保护应用程序,我只能编写.htaccess文件。一切都在公共文件夹www。
我想限制只访问一个子目录,同时禁止访问所有其他子目录。我还希望根网址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以显示我的公用文件夹的内容,同时仍然拒绝访问根目录中的所有其他内容?
答案 0 :(得分:0)
您可以使用此htaccess
RewriteEngine on
RewriteRule ^$ /public/ [L,R]
RewriteRule !public - [R=403]