Cloudflare用"总是使用https#34; on break url并删除查询字符串

时间:2015-01-23 10:39:44

标签: https query-string cloudflare

我在一个非常大的预订网站上工作,我最近发现由于缺少参数错误,我们收到的许多请求都没有通过。

我检查了日志并注意到所有运行safari的浏览器(包括移动设备和桌面设备以及一些旧版本的IE)都存在这个问题。

问题在于,当我们从搜索步骤转到预订时,我们切换到https,这是通过"始终https" cloudflare中的选项,其模式类似于:http://www.exampel.com/Booking/ *

我要访问的网页的网址是: http://www.exampel.com/Booking/Book#!/?Product=1&product=2

单击该链接将引导我访问chrome和firefox中的该页面,但不会在safari(以及一些旧版本的IE)中将我发送给:

http://www.exampel.com/Booking/Book

1 个答案:

答案 0 :(得分:2)

我遇到了Cloudflare丢弃查询字符串的问题,并且不使用Always uses https选项解决了这个问题。相反,我创建了这3个重定向规则:

http://example.com/*      Forwarding to https://www.example.com/$1
http://www.example.com/*  Forwarding to https://www.example.com/$1
https://example.com/*     Forwarding to https://www.example.com/$1

如果您希望非www网址可​​用而不是重定向,则可以调整它们。就我而言,我将所有内容都指向https://www.example.com版本。

我不确定为什么你只在某些浏览器上看到它。