如果超过 16384 字节,Ajax 查询将引发服务器错误 500

如果超过 16384 字节,Ajax 查询将引发服务器错误 500

无论使用哪种编辑器(内置编辑器或 Elementor),只要内容长度超过 16384 字节,在更新 Wordpress 中的页面时都会收到服务器错误 500。只有在将 PHP 从 7.4 更新到 8.2.6 后才会出现这种情况。它在 Ajax POST 查询中失败。

我重新创建了所有 php.ini 设置,然后显著增加了它们:

max_input_time: 600, 
max_input_vars: 500000, 
max_multipart_body_parts: 150000, 
output_buffering: 32096, 
memory_limit: 768M, 
upload_max_filesize: 32M, 
post_max_size: 32M, 
PHP_FCGI_MAX_REQUESTS: 100000

mysqlnd 命令缓冲区大小:32768,读取缓冲区大小:32768。

数据库扩展 mysqli > innodb_buffer_pool_size:134217728(~128 MB)> key_buffer_size:8388608(~8 MB),max_allowed_pa​​cket:134217728(~128 MB)。

我也尝试增加

FcgidMaxRequestLen="1073741824", 
maxAllowedContentLength="300000000", 
maxUrl="409600", 
maxQueryString="204800", 
maxJsonLength="50000000" 

在 web.config 中。

它是 IIS 10 上的 Wordpress 6.2、MySQL 8.0.19。

有趣的是,16384 正好是 4x4096。配置文件中有一些 4096 的值,我在设置中将其大大增加了。超过 16384 个字符就会失败。php 日志中没有记录任何有用的内容。这是一个相对较小的页面,只有几段文字。

我花了好几天来解决这个问题。任何帮助我都会感激不尽。谢谢!

相关内容