【问题标题】:301 status redirect code301状态重定向代码
【发布时间】:2018-05-23 17:55:05
【问题描述】:

我是一个 wordpress 网站的新手。我通过 seo 检查器运行它,并被告知我的网站有 302 代码而不是 200 代码,这是一个严重错误。

谷歌搜索后,我发现一篇文章指示我转到 .htaccess 文件。

我打开文件,发现如下:

Options -Indexes


# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteRule ^index.php$ - [L]

# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+)  wp-includes/ms-files.php?file=$2 [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule  ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule  ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]
RewriteRule . index.php [L]
</IfModule>
# END WordPress

我应该删除带有301代码的链接还是更改为200?

在此先感谢您提供任何帮助或见解。我希望这个问题有意义。

【问题讨论】:

  • 您没有理解代码的含义。 200 状态不是您自己设定的。具体来说,它意味着请求已成功。 301 和 302 是重定向代码。 301 重定向意味着页面已永久移动到新位置。 302 重定向意味着移动只是暂时的。了解不同代码含义的一个很好的参考点是w3.org/Protocols/rfc2616/rfc2616-sec10.html
  • 感谢资源,但重定向会将页面重定向到相同的 url / 主页。为什么会这样?没有旧页面,也没有新页面。
  • 如果您的主页重定向到自身,我没有一个简单的答案。它可能与插件有关。您可以尝试一个一个关闭您的插件,看看是否有任何一个导致它。

标签: wordpress http-status-code-301


【解决方案1】:

如果 .htaccess 损坏(由插件或其他原因),您可以尝试替换它。从现有文件的外观来看,您正在使用 WordPress 多站点安装。您可以尝试将子文件夹中的当前 .htaccess 替换为以下内容:

WordPress 3.5 及更高版本

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

WordPress 3.0 到 3.4.2

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
# END WordPress

【讨论】:

  • 所有这些优点都可以在 WordPress Codex 上找到 codex.wordpress.org/htaccess
  • 非常感谢
  • 不客气。如果答案是正确的,请花一点时间接受它。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-07-16
  • 2021-05-09
  • 2018-11-04
  • 1970-01-01
  • 1970-01-01
  • 2020-03-30
相关资源
最近更新 更多