那些出现 bug 的原因: Difference between revisions

From 清冽之泉
Jump to navigation Jump to search
No edit summary
No edit summary
Line 13: Line 13:
* WSL 中刚安装的 MediaWiki,可以访问首页,一保存就 The connection was reset
* WSL 中刚安装的 MediaWiki,可以访问首页,一保存就 The connection was reset
# 首先查看 /var/log/apache2 中的 error.log 显示:[Fri Jul 19 09:41:15.705477 2024] [core:notice] [pid 20127:tid 20127] AH00051: child pid 21039 exit signal Segmentation fault (11), possible coredump in /etc/apache2。有网友说在 php.ini 中把 memory_limit 调大试试,发现原始值为 -1,改为 500M 试试。无效
# 首先查看 /var/log/apache2 中的 error.log 显示:[Fri Jul 19 09:41:15.705477 2024] [core:notice] [pid 20127:tid 20127] AH00051: child pid 21039 exit signal Segmentation fault (11), possible coredump in /etc/apache2。有网友说在 php.ini 中把 memory_limit 调大试试,发现原始值为 -1,改为 500M 试试。无效
# 重启出现 <code> Starting Apache httpd web server: apache2[Fri Jul 19 09:55:49.881666 2024] [core:warn] [pid 266:tid 266] (92)Protocol not available: AH00076: Failed to enable APR_TCP_DEFER_ACCEPT </code>。有网友说因为 WSL 1 不支持 [https://askubuntu.com/questions/1431987/ubuntu-22-04-92protocol-not-available-ah00076-failed-to-enable-apr-tcp-defer AcceptFilter],果断转为 WSL 2。成功
# 重启出现 <code> Starting Apache httpd web server: apache2[Fri Jul 19 09:55:49.881666 2024] [core:warn] [pid 266:tid 266] (92)Protocol not available: AH00076: Failed to enable APR_TCP_DEFER_ACCEPT </code>。有网友说因为 WSL 1 不支持 [https://askubuntu.com/questions/1431987/ubuntu-22-04-92protocol-not-available-ah00076-failed-to-enable-apr-tcp-defer TCP_DEFER_ACCEPT],果断转为 WSL 2。成功

Revision as of 10:35, 19 July 2024

  • 鎵句笉鍒版寚瀹氱殑妯″潡銆
这是一串乱码,问通义千问和 Kimi 都无解,灵机一动搜乱 乱码恢复 解决了,它是 UTF8 “找不到指定模块” 被当成 GBK 显示时的样子
  • php 找不到 apcu 模块
找遍种种原因,如 apcu 版本不对,apcu 放置路径不对,apcu 路径没添加到环境变量,apcu 不支持 php 8.2,xampp 不支持 apcu,apcu 用于 Windows 需要编译,重启深度不够……全都没用;问过通义千问、Kimi AI、Bing,也没弄明白。最后,创建 info.php ,内容如下:
<?php
phpinfo();
?>

终于排查出,我的 php 8.2 是 Thread Safety 的,即内存安全的,而我下载的 apcu.dll 是 Non Thread Safety 的。重新下载一份,立刻解决了问题。感谢 CSDN 博主 @weixin_39673293 的 这篇文章 中的 nts 关键提示!

  • WSL 中刚安装的 MediaWiki,可以访问首页,一保存就 The connection was reset
  1. 首先查看 /var/log/apache2 中的 error.log 显示:[Fri Jul 19 09:41:15.705477 2024] [core:notice] [pid 20127:tid 20127] AH00051: child pid 21039 exit signal Segmentation fault (11), possible coredump in /etc/apache2。有网友说在 php.ini 中把 memory_limit 调大试试,发现原始值为 -1,改为 500M 试试。无效
  2. 重启出现 Starting Apache httpd web server: apache2[Fri Jul 19 09:55:49.881666 2024] [core:warn] [pid 266:tid 266] (92)Protocol not available: AH00076: Failed to enable APR_TCP_DEFER_ACCEPT 。有网友说因为 WSL 1 不支持 TCP_DEFER_ACCEPT,果断转为 WSL 2。成功