【问题标题】:How to redirect domain to https and add default language如何将域重定向到 https 并添加默认语言
【发布时间】:2019-11-09 16:12:50
【问题描述】:

我正在设置一个 apache 服务器,并希望将几种类型的域重定向到 https,如果原始 url 中不存在 zh_tw 或 zh_cn,还希望在 url 中添加默认语言 zh_tw

例如:

www.something.com/news -> https://www.something.com/zh_tw/news

something.com/news -> https://www.something.com/zh_tw/news

http://something.com/news -> https://www.something.com/zh_tw/news

http://www.something.com/zh_cn/news -> https://www.something.com/zh_cn/news

我使用 htaccess 测试器来测试我的代码,但似乎失败了,因为使用不同的主机会导致重定向?有人可以帮我解决这个问题吗?

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
RewriteRule !^(zh_tw|zh_cn)/ zh_tw%{REQUEST_URI} [R=302,L]

【问题讨论】:

    标签: apache http https server centos


    【解决方案1】:

    您的 htaccess 文件看起来不错。如果 url 不包含语言代码并且以 http 开头,那么首先用户将被重定向到 https,然后他将被重定向到包含语言代码的新 url。所以经过两次重定向后,用户将被重定向到正确的页面。

    不能同时应用两个重定向。所以第一个重定向规则将首先应用,然后是第二个规则。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-27
      • 1970-01-01
      • 2013-12-01
      • 1970-01-01
      • 2019-12-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多