htaccess重定向+隐藏url中的子文件夹

时间:2014-01-07 18:17:27

标签: apache .htaccess mod-rewrite redirect amazon-web-services

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

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

如果您访问www.domain.com或domain.com,则会产生 被重定向到domain.com/subfolder 太棒了,但我也想将/ subfolder部分隐藏在网址中。

我如何实现这一目标?

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

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

1 个答案:

答案 0 :(得分:10)

尝试此规则:

# 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]