首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >瞄准m和m/

瞄准m和m/
EN

Stack Overflow用户
提问于 2019-06-12 07:10:13
回答 2查看 27关注 0票数 0

我尝试以www.mydomain/m和www.mydomain/m/为目标进行重定向。

我曾经使用子域m.mydomain.com在我的服务器上的/m/目录之外提供移动友好的页面

我不再这样做了,现在将这些请求重定向到主站点,它工作得很好。

但是,现在对/m或/m/的请求会导致无限循环的重定向。

从旧的m.mydomain.com重定向相当复杂,我需要在服务器上保留/m目录。

我已经通过注释掉指令调整了.htaccess的相关部分(在mydomain.com和m.mydomain.com中),但当然,这破坏了我试图做的主要重定向,并且它没有解决问题。

这是/m目录.htaccess所具有的,并且成功地将流量重定向到主站点:

redirect 301 / https://www.example.com/

因此,我现在尝试只针对产生无限循环的请求,即/m和/m/,并将它们重定向到主页,即www.mydomain.com

我尝试过(在mydomain根.htaccess中):

RewriteCond %{REQUEST_URI} "^\/m$" [NC] RewriteRule ^ https://www.example.com/ [R=301,L]

RewriteCond %{REQUEST_URI} "^\/m\/$" [NC] RewriteRule ^ https://www.example.com/ [R=301,L]

我预计这些请求将针对/m和/m/请求,并重定向到主页,但这两个请求的无限循环仍在继续。

EN

回答 2

Stack Overflow用户

发布于 2019-06-13 03:17:43

在/m/目录.htaccess中添加此规则

代码语言:javascript
复制
RewriteEngine On
RewriteRule (.*) https://www.example.com/ [R=301,L]

将此规则添加到mydomain根.htaccess的顶部

代码语言:javascript
复制
RewriteEngine On
RewriteRule ^m\/$ https://www.example.com/ [R=301,L]
RewriteRule ^m$ https://www.example.com/ [R=301,L]
票数 0
EN

Stack Overflow用户

发布于 2019-06-13 15:24:19

谢谢,JarekBaran。你的建议让我走得更近了,但并不完全是这样。我仍然需要将所有旧页面从/m目录重定向到它们的新位置(相同的目录名,相同的文件名)。

这就是最终奏效的方法:

在根.htaccess中:

代码语言:javascript
复制
RewriteCond %{REQUEST_URI} !^/m$ [NC]
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]

在/m目录.htaccess中:

代码语言:javascript
复制
RewriteCond %{REQUEST_URI} !^m$ [NC]
RewriteRule (.*) https://www.intmath.com/$1 [R=301,L]

现在,这会将旧的m.example.com/directory/page重定向到www.example.com/directory/page,并且www.example.com/m没有无限循环

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56552730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档