【问题标题】:Remove 1 of 2 301 redirects on wordpress site删除 wordpress 网站上 2 301 个重定向中的 1 个
【发布时间】:2017-09-14 01:15:40
【问题描述】:

在安装一个不错的插件来处理所有 http 到 https 重定向之前,我对我的 .htaccess 文件进行了一些更改,现在我看到它在我的主页获得 200 个状态代码之前有 2 个重定向。如何删除由我的 .htaccess 引起的 1 个重定向?

# BEGIN HTTPS Redirection Plugin
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
# END HTTPS Redirection Plugin

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

我对我的 WP 网站使用 Easy HTTPS (SSL) 重定向。

我使用https://httpstatus.io/ 来检查重定向次数及其状态。

【问题讨论】:

  • 您发布的 .htaccess 代码是标准 WP。重定向发生在沿线的其他地方。
  • 是的,那是我的插件。我想我必须编辑我的 .htacess
  • 抱歉,我复制了错误的 .htaccess。刚刚更新
  • 您看到 2 个重定向:一个从 HTTP 到 HTTPS,另一个从非 www 到 www。对我来说似乎非常好。

标签: wordpress .htaccess redirect mod-rewrite


【解决方案1】:

我在 Wordpress 中遇到了同样的问题,它对我有用的是:

  1. 安装插件 Better Search 将数据库中的所有实例从http://替换并更改为https://

  2. 删除.htaccess文件中与mod_rewrite相关的所有代码

  3. 在主题的functions.php文件中插入以下代码:

    remove_filter('template_redirect','redirect_canonical');
    
  4. 清除所有缓存

结果我得到了这个:

Results

【讨论】:

  • 此列表中的第 3 项正是我们所需要的。我们知道在某处设置了重定向,但找不到在哪里 - 感谢分享。
猜你喜欢
  • 1970-01-01
  • 2015-09-27
  • 2017-01-23
  • 2013-09-24
  • 1970-01-01
  • 2016-12-13
  • 2018-07-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多