-1

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

提前致谢

4

1 回答 1

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”开头,然后对请求的其余部分进行分组。接下来的 2 个条件检查请求的其余部分(由 反向引用%1)是否映射到现有文件或目录。如果所有条件都满足,那么它会在内部将 URI 重写为/bar/public.

于 2012-10-25T09:07:22.833 回答