.htaccess - 301 重定向可能与 CloudFlare 冲突
问题描述
我在 .htaccess 中的旧 301 重定向不再起作用,因为某些东西重定向了两次。重定向示例:
Redirect 301 /oldpage.html //www.example.com/newpage.php
这曾经有效,但现在它可以:
https://www.example.com//www.example.com/newpage.php
在 CloudFlare 中,我有一个 www 重定向的页面规则:
https://example.com/*
Forwarding URL (Status Code: 301 - Permanent Redirect, Url: https://www.example.com/$1)
我在 CloudFlare 中的“始终使用 HTTPS”已开启。什么可能导致双重重定向?
解决方案
我将其中一个 URL 放入重定向检查器http://www.redirect-checker.org/ 并注意到由于某种原因 URL 会返回到 http,然后又返回到 https。所以我回去编辑我的 .htaccess 文件以明确包含 https:
Redirect 301 /oldpage.html https://www.example.com/newpage.php
现在重定向按预期工作,至少在隐身窗口中。常规浏览器尚未反映更改。
推荐阅读
- elasticsearch - 查询以匹配弹性搜索中的子字符串
- python-2.7 - 自 2019 年 7 月 30 日起,独立的 App Engine SDK 已弃用。如何迁移 pycharm python2.7 应用程序
- javascript - 无法使用 html2canvas 拍摄谷歌地图快照
- vba - 从邮件合并中保存单个文档时出错
- javascript - React + 为第三方 url 的 CSS 和 Js 添加缓存清除
- node.js - GENERATE_SOURCEMAP=false 问题
- c# - 如何检查特定用户是否对远程机器上的特定文件夹具有读/写/任何权限?C#
- python - 在 python,BS4 上解析数据时得到“无”
- javascript - 在 Chrome 和 Edge 中工作但在 IE 中不工作的代码 - setimeout?
- php - 发送成功事件的电子邮件通知