我正在试图弄清楚如何设置.htaccess规则集,如果最初未指定,则强制在域前面存在“www”,但与此同时,它如果属于子域,则不会产生任何影响;所有这些都没有硬编码任何域名,因此脚本可以在不同的服务器和配置下移植。
修改
对不起,我无法在第一时间解释这个问题。所以我需要的是:
http://example.com - >重定向到http://www.example.com
http://www.example.com - >不重定向
http://subdomain.example.com - >不重定向
答案 0 :(得分:12)
此mod_rewrite规则应针对二级域执行此操作:
RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
答案 1 :(得分:1)
RewriteCond %{HTTP_HOST} ^example\.org
RewriteRule ^ http://www.example.org%{REQUEST_URI} [L,R=301]
这不会重定向子邮件,例如mail.example.org