我环顾四周并尝试了一些有效的规则和条件;虽然有些不起作用,或者条件会捕获太多导致其他域也重定向。这对我有用:
# Redirect (also catches www.)
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteRule ^(/)?$ subfolder [L]
结果是如果您访问 www.domain.com 或 domain.com 被重定向到domain.com/子文件夹 很好,但我也喜欢从 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]
关于regex - htaccess 重定向 + 隐藏 url 中的子文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20978869/