在 Wordpress 应用程序“提交的 uri 太大”上获取 err_too_many_redirects

Posted

技术标签:

【中文标题】在 Wordpress 应用程序“提交的 uri 太大”上获取 err_too_many_redirects【英文标题】:Getting err_too_many_redirects on Wordpress application "Submitted uri too large" 【发布时间】:2020-10-13 20:48:30 【问题描述】:

我正在使用 wordpress 应用程序并在跨平台 Web 服务器 xampp 上运行它。该网站运行了几个星期。突然,URL 开始返回 err_too_many_redirects。该网站只是陷入了无限重定向循环。

在浏览器上打开 URL http://wordpress.example.com 会重定向到 http://wordpress.example.com/login?redirect_to=http%3A%2F%wordpress.example.com%2F 并继续在 URL 末尾添加 redirect_to=http%3A%2F%wordpress.example.com%2F,直到到达 apache GET 限制。最后webserver返回错误HTTP 414 “Request URI too long”

我检查了我的 xampp(apache、mysqlphp)的设置和配置;全部不变意味着默认设置。

apache 日志读取

"GET /?redirect_to=http%3A%2F%2Fwordpress.example.com%2F%3Fredirect_to%3Dhttp%253A%252F%252Fwordpress.example.com%252F HTTP/1.1" 302 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (Khtml, like Gecko) Chrome/83.0.4103.116 Safari/537.36"

我重新启动了网络服务器

检查了.htaccess 设置

<IfModule mod_rewrite.c>
    RewriteEngine On
 #  RewriteBase /

    # Force Domain & SSL
 #  RewriteCond %SERVER_PORT !^443 [OR]

    # Security Fix, no names for you my friend
    RewriteCond %QUERY_STRING author=\d
    RewriteRule ^ /? [L,R=301]

    # If the requested filename exists, simply serve it.
    # We only want to let Apache serve files and not directories.
    RewriteCond %REQUEST_FILENAME -f
    RewriteRule .* - [L]

    # Admin 404 Fix
    RewriteRule ^wp/wp-admin/$ wp/wp-admin/index.php [L]

    # Rewrite all other queries to the Wordpress.
    RewriteRule .* wp/index.php [L]     # Use if live env is up
 #  RewriteRule .* update.html [L]      # Use if updating live env
</IfModule>

wp-config.php

define('WP_HOME','http://wordpress.example.com');
define('WP_SITEURL','http://wordpress.example.com/wp');

附加说明:我既没有使用任何 SEO 插件或任何重定向,也没有使用安全的 https。 此外,GET 没有表格。站点内的所有请求都使用 POST。

【问题讨论】:

【参考方案1】:

正如hostinger 解释的那样,有五种方法/步骤可以摆脱 err_too_many_redirects

    删除浏览器数据 检查您的 URL 设置 删除 WordPress 缓存 禁用损坏的插件 禁用 .htaccess 文件

它读取你正在使用子域,你可能想在subdomain specific.htaccess下面有配置

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

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %REQUEST_FILENAME -f [OR]
RewriteCond %REQUEST_FILENAME -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]

【讨论】:

这不是 MultiSite 的 htaccess 配置吗?

以上是关于在 Wordpress 应用程序“提交的 uri 太大”上获取 err_too_many_redirects的主要内容,如果未能解决你的问题,请参考以下文章

提交的URI太大了!请求的URL的长度超过了此服务器的容量限制。请求无法处理

phpMyAdmin:“URI 太大”

wordpress 插件是啥意思

如何将wordpress变成小程序

在 Rails 应用程序中使用 Wordpress 主题?

从 wordpress 触发 laravel 事件