【问题标题】:301 .htaccess redirect with other domains in web root301 .htaccess 重定向到 web 根目录中的其他域
【发布时间】:2013-07-29 11:53:50
【问题描述】:

通常,如果我想将域和该域中的所有页面重定向到另一个新域,我会在我的 .htaccess 文件中使用它:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !example.com$ [NC]
RewriteRule ^(.*)$ http://new-example.com/$1 [L,R=301]

但我有一个主机帐户,该主机使用 cpanel 并设置插件和子域以包含在帐户主域的 Web 根目录中,而不是外部。不幸的是,这个 htaccess 代码也会影响所有其他域。我如何编写它以使其仅影响 example.com 而不是帐户的其他插件域,但仍重定向主域中的所有文件?

【问题讨论】:

    标签: .htaccess redirect


    【解决方案1】:

    用这个替换你现有的规则:

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

    【讨论】:

    • 谢谢!知道这是匹配域与匹配所有域而不是 example.com 的问题,只是不知道 htaccess 语法,谢谢。
    【解决方案2】:

    您必须声明要重定向的域。在您说所有 example.com 的域都被重定向到 new-example.com 之前。

    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^(www\.)?example1\.com$ [OR]
    RewriteCond %{HTTP_HOST} ^(www\.)?example2\.com$ [OR]
    RewriteCond %{HTTP_HOST} ^(www\.)?example3\.com$
    RewriteRule ^(.*)$ http://new-example.com/$1 [L,R=301]
    

    【讨论】:

      猜你喜欢
      • 2021-04-04
      • 2012-12-18
      • 1970-01-01
      • 2013-09-30
      • 2017-06-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多