htAccess 重定向 + 隐藏 URL 中的子文件夹



我环顾四周,尝试了一些有效的规则和条件;而有些不起作用,或者条件会捕获太多,导致其他域也重定向。这对我有用:

# Redirect (also catches www.)
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteRule ^(/)?$ subfolder [L]

导致如果您访问 www.domain.com 或 domain.com被重定向到 domain.com/subfolder太好了,但我也喜欢从 url 中隐藏/subfolder 部分。

我该如何实现这一点?

请注意,我有多个域,每个域都应重定向到自己的文件夹。我还希望每个页面在其各自的文件夹中仍然可见。

所以 www.domain.com/abc 应该重定向到 domain.com/subfolder/abc 但显示 domain.com/abc

试试这个规则:

# remove www
RewriteCond %{HTTP_HOST} ^www.(.+)$ [NC]
RewriteRule ^ http://%1%{REQUEST_URI} [NE,R=301,L]
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteRule !^subfolder/ /subfolder%{REQUEST_URI}  [L]

最新更新