问题描述
首先,我想说我绝不是配置Apache的专家,所以如果我没有正确解释某些事情,请告诉我,如果您需要更多信息,我会很高兴提供它,但是请耐心等待我。
在工作中,我们会定期收到客户的请求,以创建新的“个性化网址”重定向。多年来,我们的任务只是将规则添加到列表中,并提供URL。
现在进入有趣的东西:
- 我们有2个域(1个域为英语,1个域为法语):mint.ca&monnaie.ca(将其重定向到法语的mint.ca)。这是我们第一次收到要求英语和法语的规则相同的请求。
- 重定向规则如下,位于文件mint-rewrites.conf.inc中:
无效的法国规定
RewriteCond %{HTTP_HOST} (www\.)?monnaie.ca
RewriteRule ^/178654_qr https://www.mint.ca/store/coins/coin-prod3700054?lang=fr_CA&rcmeid=van_178654_qr_fr [R=301,L,QSA,NC]
相同的规则,但适用于英语
RewriteRule ^/178654_qr https://www.mint.ca/store/coins/coin-prod3700054?lang=en_CA&rcmeid=van_178654_qr [R=301,NC]
可以正常工作的重定向是:
- http://mint.ca/178654_qr
- https://mint.ca/178654_qr
- http://monnaie.ca/178654_qr
- 但是https://monnaie.ca/178654_qr无法正常工作。它指向了英语规则。
同样,我不是Apache专家,但我将发布一些我认为相关的其他信息: 在conf文件中,我们具有以下内容:
- 对于文件mint-80.conf:
RewriteEngine On
## All pages are pages HTTPS-only pages ##
RewriteCond %{HTTPS} off
RewriteRule ^/(.*)$ https://%{SERVER_NAME}/$1 [R=301,QSA]
- 对于文件mint-common.conf.inc(与mint-80.conf和mint-443.conf共享):
RewriteCond %{HTTP_HOST} ^mint.ca
RewriteRule ^/(.*)$ https://www.mint.ca/$1 [R=301,L]
LogLevel alert rewrite:trace6
但是我确实在access_log中看到以下内容:
- [22/Oct/2020:10:34:00 -0400] "GET /178710_qr HTTP/1.1" 301 351 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/85.0.4183.102 Safari/537.36"
和
- [22/Oct/2020:10:33:57 -0400] "HEAD /178710_qr HTTP/1.1" 301 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/85.0.4183.102 Safari/537.36"
感谢任何帮助,以了解为什么法语的https不起作用,而其余的却起作用。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)