【问题标题】:htaccess RewriteRule for new domain新域的 htaccess RewriteRule
【发布时间】:2018-04-10 16:42:02
【问题描述】:

我的 .htaccess 文件有一些问题。我有两个域,旧域和新域。当用户访问旧域时,我想将用户重定向到新站点。

示例: 如果他们访问:“olddomain.com”,那么他们应该被重定向到“newdomain.com”。这实际上并不难编码,但我也想要一些特殊的重定向。如果有人试图访问“olddomain.com/service.html”,那么我想将用户重定向到“newdomain.com/whatwedo.hml”。 如果有人试图访问“olddomain.com/test/hello/text.html”,那么我想将他重定向到“newdomain.com/something/hello.html”。

我有一个包含 20 个要重定向的特定链接的列表。

到目前为止我已经尝试过:

RewriteEngine On
RewriteCond %{HTTP_HOST} (www\.)?olddomain.com/service.html 
RewriteRule (.*) http://www.newdomain.com/whatwedo.hml [R=301,L]

RewriteCond %{HTTP_HOST} (www\.)?olddomain.com
RewriteRule (.*) http://www.newdomain.com/ [R=301,L]

使用此代码,每次访问 olddomain.com/whatever 都会重定向到“newdomain.com”

有人可以帮我吗?

谢谢你:)

问候

【问题讨论】:

  • 您的新域是否与旧域指向同一个文档根目录?

标签: .htaccess mod-rewrite


【解决方案1】:

%{HTTP_HOST} 将只包含浏览器地址栏中使用的域名 (olddomain.com) 而不是 URI (/service.html),因此您的第一个条件永远不会匹配。试试这个:

RewriteCond %{HTTP_HOST} (www\.)?olddomain.com 
RewriteRule ^service\.html http://www.newdomain.com/whatwedo.hml [R=301,L]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-02
    • 1970-01-01
    • 2013-04-23
    • 2021-08-14
    • 2016-07-22
    • 1970-01-01
    • 2023-02-01
    • 1970-01-01
    相关资源
    最近更新 更多