【问题标题】:Redirect request using .htaccess使用 .htaccess 重定向请求
【发布时间】:2010-07-06 05:50:41
【问题描述】:
【问题讨论】:
标签:
apache
.htaccess
redirect
【解决方案1】:
试试这些规则:
RewriteCond %{HTTPS} !=on [OR]
RewriteCond %{HTTP_HOST} !=example.com
RewriteRule ^ https://example.com%{REQUEST_URI} [L,R=301]
RewriteRule ^$ subdirectory [L]
【解决方案2】:
这个怎么样(基于 Gumbo 的回答):
RewriteEngine On
# Redirect direct subdirectory/ request to main domain
RewriteCond %{THE_REQUEST} ^(POST|GET)\s/subdirectory
RewriteRule ^subdirectory/?(.*)$ https://example.com/$1 [R=301,L]
# Redirect www/non-https to https://example.com
RewriteCond %{HTTPS} !=on [OR]
RewriteCond %{HTTP_HOST} !=example.com
RewriteRule ^.*$ https://example.com/$0 [R=301,L]
# Redirect (internally) to subdirectory/
RewriteCond %{REQUEST_URI} !^/subdirectory/
RewriteRule ^.*$ subdirectory/$0 [L]