【问题标题】:force https to a certain url强制 https 到某个 url
【发布时间】:2012-02-28 13:21:16
【问题描述】:

我知道这个问题已通过多种方式得到解决,但找不到与我现在遇到的类似问题。问题是我有一个代码可以强制 https 到某个或特定的 url,但似乎 (s) 字母可以手动删除,因此 url 与 http 一起使用!我的意思是我希望再次强制 https 以防 url 从 https 更改为 http。

我希望这是一个清晰的解释。

RewriteCond %{SERVER_PORT} 443 
RewriteCond %{REQUEST_URI} main
RewriteRule ^(.*)$ https://www.domain.com/folder1/folder2/login$1 [R,L]

如果 https 更改,此代码是否会再次重定向??

谢谢

更新 #1 我明白了我想指出的意思。叫做“https的阻塞爬取”

【问题讨论】:

标签: mod-rewrite redirect https


【解决方案1】:

这样做:

RewriteCond %{REQUEST_URI} main
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://www.domain.com/folder1/folder2/login$1 [R,L]

【讨论】:

  • 非常感谢@ThinkingMonkey。但是,快速的问题,如果我手动将 https 更改为 http,它会回到 https 吗?我现在就试一试,看看情况如何
  • 我试过了,但是好像有问题……我相信是“主”目录。
  • @Digitalsite RewriteCond %{REQUEST_URI} main 在您的上述代码中(有问题)。因此,假设您要重定向 URI 中包含“main”的页面。是的,即使手动将 https 更改为 http,它也会重定向到 https。
  • @Digitalsite 是您想要重定向到 https 的 URL,即使手动将 https 更改为 http。
  • 好的,我现在明白了。但是,我尝试了,但如果我将其更改为 http,它仍然不会重定向......知道为什么吗?我希望始终使用 https 的 url 是用于登录的 URL,因为它是最重要的。
猜你喜欢
  • 2012-07-11
  • 2015-06-22
  • 2011-03-19
  • 2019-01-23
  • 1970-01-01
  • 2023-03-03
  • 2023-04-02
  • 2019-05-01
  • 1970-01-01
相关资源
最近更新 更多