【问题标题】:Redirecting folders to their corresponding subdomains将文件夹重定向到其对应的子域
【发布时间】:2017-12-05 15:04:46
【问题描述】:
【问题讨论】:
标签:
apache
.htaccess
url
redirect
subdomain
【解决方案1】:
您可以在站点根目录.htaccess 文件中使用此规则:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^((?!www).+)\.domain\.com$ [NC]
RewriteRule ^((?!subdomains/).*)$ subdomains/%1/$1 [L,NC]
【解决方案2】:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z]+)/(\d+)$ http://$1.zipcode.direct/$2 [R=301,L]
上面是最好和最短的解决方案(感谢 Ruslan G.!),Alexey S. 的第一个方法不检查类型并且不太优雅,留下它以防有人想进一步调整:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/(.*)$ http://$1.zipcode.direct/$2 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]*)$ http://$1.zipcode.direct [R=301,L]