htaccess将站点根目录重定向到public_html文件夹

时间:2012-10-25 08:03:09

标签: .htaccess redirect directory public

当用户访问foo.com/bar时,他们应该会看到该网站位于foo.com/bar/public。必须隐藏公共部分。我如何使用.htaccess实现这一目标?

提前致谢

1 个答案:

答案 0 :(得分:0)

将这些规则放在文档根目录中的htaccess文件中:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/bar/(.*)$
RewriteCond %{DOCUMENT_ROOT}/bar/public/%1 -f [OR]
RewriteCond %{DOCUMENT_ROOT}/bar/public/%1 -d
RewriteRule ^/?bar/(.*)$ /bar/public/$1 [L]

第一个条件检查URI是否以“/ bar”开头,然后对请求的其余部分进行分组。接下来的两个条件检查请求的其余部分(由%1反向引用)映射到现有文件或目录。如果满足所有条件,则会在内部将URI重写为/bar/public