【问题标题】:Redirect all the versions of website to direct one .htaccess将所有版本的网站重定向到一个 .htaccess
【发布时间】:2017-01-24 23:14:20
【问题描述】:

我想将我网站的所有版本重定向到直接版本。例如,我有一个域 example.com,它在许多版本中显示相同的内容,例如:

ww.w.example.com,
w.example.com,
m.example.com,
anystring.example.com,
and many others...

我找到了如何将 www 重定向到非 www 版本的解决方案,但它仍然没有解决我的问题。

     RewriteEngine On
     RewriteCond %{REQUEST_FILENAME} !-f
     RewriteCond %{REQUEST_FILENAME} !-d
     RewriteRule ^(.*)$ index.php/$1 [L]    

     RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]  
     RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]

如何编辑此代码以实现从任何版本的网站重定向到http://example.com

【问题讨论】:

  • 您的域名服务器设置中必须有通配符 DNS 匹配。如果在 DNS 服务器中设置了 *.example.com,那么您必须将 HTTPD 配置文件中的 VHOST 条目修改为 *.example.com,并且它可以在不更改 htaccess 的情况下工作
  • .example.com 是所谓的 子域,通过 example.comDNS zone 创建/i>,而不是在 htaccess 文件中

标签: .htaccess redirect mod-rewrite url-rewriting


【解决方案1】:

你可以使用:

RewriteEngine On

RewriteCond %{HTTP_HOST} !^example.com$ 
RewriteRule ^ http://example.com%{REQUEST_URI} [NE,L,R=301] 

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]    

【讨论】:

    猜你喜欢
    • 2018-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-09
    • 2013-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多