wordpress - .htaccess 删除链接中的双 https:// http://
问题描述
我正在一个客户网站上工作,出于某种奇怪的原因,他们的很多链接显示如下:https://http://yourdomain.com/xxxx
当我使用控制台查看源代码并重定向到https://yourdomain.com时单击链接很好,但是当它是首页(未打开控制台)时,单击按钮(链接)将打开 https//yourdomain .com,将缺少“:”或“//”
我试图找到这些内容的来源,但没有运气,我不能不使用数据库来删除那个旧的“HTTP”,因为每次他们创建新资源时仍然会有https://http://
所以我想知道我是否可以使用 .htaccess 文件来检测所有那些仅指向“https://”的“ https://http:// ”链接。
谢谢您的帮助!
解决方案
我认为它在.htaccess 中不实用。但是,作为解决问题原因之前的临时解决方案,您应该能够在 WordPress 最终“输出”页面时添加代码来替换坏链接。
我打算写一个解决方案,但发现我只需要在 stackexchange 上修改“最终输出”的代码( 本身基于这篇文章)
尝试将以下内容添加到您的主题的 functions.php 中,或者将其添加到您自己的自定义站点特定插件中。
function my_linkfix_callback($buffer) {
$buffer = str_replace( 'https://http://' , 'https://' ,$buffer);
return $buffer;
}
function my_linkfix_buffer_start() { ob_start("my_linkfix_callback"); }
function my_linkfix_buffer_end() { ob_end_flush(); }
add_action('after_setup_theme', 'my_linkfix_buffer_start');
add_action('shutdown', 'my_linkfix_buffer_end');
显然这只是一个临时解决方案,直到您解决问题的原因
推荐阅读
- firebase - 无法使用 Flutter Web 的 image_picker 将文件上传到 Firebase 存储
- c# - C# 查找用户是否从 Windows Server AD 迁移到 Microsoft Azure
- c# - Entity Framework Core,UD sql 函数抛出 System.NotImplementedException:'方法或操作未实现。'
- python - 我们如何使用 Python 将布尔值列表传递给 Plotly 中的下拉按钮?
- python - 如何在 Python 中以被动方式将值传递给交互式输入?
- php - 我怎样才能让ajax调用在phonegap上工作
- powershell - 如何使用 PowerShell 覆盖文件?
- css - 我可以得到帮助,让我的地图成为一个固定位置吗?
- string - Lua 4 中的自定义字符串大小写函数
- tcp - 如何从连接到服务器的客户端获取 TLS 连接字节?