使用CDN时,我有一个客户端遇到了大约500个错误。 这些错误表明内部redirect过多,我们的研究证实了这一点。 客户端不想调整他们的内部redirect,并想以另一种方式解决这个问题。
根据我迄今为止的研究,这看起来像一个硬帽,它不是特定于任何一种types的networking服务器,并且是为了避免无限循环。 话虽如此,有什么办法可以提高这个限度 – 例如20而不是10?
例:
浏览器>> 9redirect>>产地200页(共9条redirect)
浏览器>> 9redirect>>源自定义404页面(自定义404redirect+1 – 总共10redirect)
浏览器>> CDN(自定义规则+1redirect)>> 9redirect>>原始200页(共10个redirect)
浏览器>> CDN(自定义规则+1redirect)>> 9redirect>>源自定义404页面(自定义404redirect+1-11redirect总计)
只有示例4给出了一个500错误。 在不调整redirectconfiguration或删除CDN的情况下,有什么办法可以解决这个问题? (不幸的是,我不能提供htaccess的更多信息的redirect,我的道歉)。
在Windows上安装Django
mod_rewrite启用,但不能正常工作
什么是选项+ FollowSymLinks?
无法通过PHP连接到Postgres,但可以连接命令行和PgAdmin在不同的机器上
如何在窗口服务器上自动重新启动Apache服务器?
Apache MINA SFTP示例
如何在Apache Fedora上启用PHP?
审查板差异不上传
剥离未列入白名单的URL中的任何参数
不幸的是,HTTP客户端决定了它愿意遵循多少重定向。 您看到的限制源于最初在RFC 2068第10.3节中给出的建议,并在RFC 7231第6.4节中再次引用:
本规范的早期版本推荐最多五次重定向[…]内容开发人员需要注意的是,一些客户可能会实现这样一个固定的限制。
在这个答案中可以找到一个粗略的估计,即有多少重定向将达到浏览器的限制。 大多数浏览器允许配置这个限制(例如Firefox正在暴露network.http.redirection-limit设置)。
然后,Web服务器是另一回事:看起来Apache在2.0.45和2.1之间有RewriteOptions指令的MaxRedirects选项。 LimitInternalRecursion设置似乎已经接管了这个。 我一直无法找到一个相当于Nginx的设置。
最后一点:如果你真的看到了这么多的内部重定向(即重定向只能在重写引擎中执行,并且不会立即导致实际的HTTP重定向),这可能是修改重写规则的强有力的指标。
您需要在客户端留下深刻印象,您必须修复需要无数内部重定向的糟糕的应用程序逻辑,而不是尝试更改地球上的每个浏览器。
**编辑**
Apache显然有选择使用RewriteOptions MaxRedirects选项来更改此服务器端,但我认为你仍然会遇到浏览器的问题,这往往表明你的用户停止重定向和保释…有时甚至在10次重定向之前。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。