(1)我目前正在将一个项目转移到网络主机。
(2)我想将网站安装到子域中 - 即。sub.domain.com
(3)我已指向sub.domain.com
服务器根目录的子目录:/sub/public_html
(4)/sub
有2个目录:
`public_html` - for the publicly traversable files & directories
`resources` - for sensitive documents
(3)我现在想要:
(a)users to be able to visit `sub.domain.com` and traverse the contents of `public_html`
(b)users NOT to be able to traverse the contents of 'resources`
(b)users NOT to be able to view the DIRECT/IMMEDIATE contents of the server root
我的问题是:
(1)可以使用.htaccess 来完成吗?
(2)如果是,怎么办?
谢谢。
编辑:meant /sub/public_html instead of just /sub
答案1
显而易见的答案是将子域的服务器根目录更改为sub/public_html
而不是public_html
。如果您不希望用户能够访问该目录下的任何内容,请不要将其包含在服务器根目录中。服务器端脚本仍然能够访问该目录。
也就是说,你可以在 .htaccess 中做到这一点,但性能会有所下降:
RewriteEngine On
RewriteRule ^public_html/ - [L]
RewriteRule ^resources - [R=403,L]
RewriteRule .* public_html/$0 [L,QSA]