【问题标题】:Domain and subdomain .htaccess redirect域和子域 .htaccess 重定向
【发布时间】:2022-01-15 22:42:30
【问题描述】:

我需要在.htaccess 中进行两个不同的重定向。

在一个网站上:example.com 被创建别名 user.example.com(两个域的代码相同)。

我需要写两个重定向

user.example.com -> user.example.com/login

第二个

example.com -> www.example.com(不带 www 的版本到带 www 的版本)包括子页面(不包括 user.example.com - 不是 www 版本)

所有使用 https 协议的重定向

只有一个重定向可以正常工作,但与第二个一起它会失败。

RewriteEngine On

## RewriteRule ^user.example.com https://user.example.com/login [R,L]

RewriteCond %{HTTP_HOST} ^user\.example\.com/ [NC]
RewriteRule ^(.*) https://user.example.com/login [L,R]

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

【问题讨论】:

  • 你能分享一下你到目前为止所尝试的吗?
  • 我分享了我的规则

标签: .htaccess redirect subdomain


【解决方案1】:
RewriteCond %{HTTP_HOST} ^user\.example\.com/ [NC]
RewriteRule ^(.*) https://user.example.com/login [L,R]

这将导致重定向循环,因为它将一切(包括/login 本身)重定向到/login。

如果您只想重定向文档根目录,那么您应该将 RewriteRule pattern 从 ^(.*) 更改为 ^$(一个 empty URL-path )。

另一个重定向是“OK”。

您应该在测试前清除浏览器缓存。

【讨论】:

  • 谢谢它运行良好!谢谢!
猜你喜欢
  • 1970-01-01
  • 2013-04-23
  • 2014-06-24
  • 2013-08-10
  • 2019-10-13
  • 2012-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多