我正在本地开发一个 Web 应用程序,它进行 API 调用。一些 API 调用突然停止工作,而另一些则继续工作。如果我直接访问浏览器中的 api 端点,它第一次总是返回:
This page isn’t working
samplesite.com didn’t send any data.
ERR_EMPTY_RESPONSE
Run Code Online (Sandbox Code Playgroud)
请求标头是:
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Connection: keep-alive
Cookie: PHPSESSID=xxx; _ga=GAxxx; _gid=GAxxx; __stripe_mid=xxx; __stripe_sid=xxx
Host: samplesite.com
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Safari/537.36
Run Code Online (Sandbox Code Playgroud)
我的 apache 日志中出现错误:
[Mon Jan 20 22:10:18.133644 2020] [core:notice] [pid 4702] AH00052: child pid 6191 exit signal Segmentation fault (11)
[Mon Jan 20 22:14:02.343396 2020] [core:notice] [pid 4702] AH00052: child pid 6241 exit signal Segmentation fault (11)
[Mon Jan 20 22:14:02.343886 2020] [core:notice] [pid 4702] AH00052: child pid 6240 exit signal Segmentation fault (11)
[Mon Jan 20 22:14:07.349923 2020] [core:notice] [pid 4702] AH00052: child pid 6212 exit signal Segmentation fault (11)
Run Code Online (Sandbox Code Playgroud)
尝试获取有关该过程的详细信息不会返回任何结果:
alan:~$ ps -p 6212
PID TTY TIME CMD
Run Code Online (Sandbox Code Playgroud)
如果我刷新页面,第二次(以及所有其他时间)它将返回正确的数据(为了测试,我让 api 端点简单地输出“hello world”)。
为了解决我试过:
我刚刚更新到 Catalina,但不认为这是相关的,因为我相信我以前遇到过这个错误并且它自己消失了。
有什么建议?谢谢你。
阅读 Firefox 中的错误提供了更多线索。火狐浏览器的错误提示是:
Secure Connection Failed: The page you are trying to view cannot be shown because the authenticity of the received data could not be verified
Run Code Online (Sandbox Code Playgroud)
因此由于某种原因存在 SSL 问题。我在本地创建了一个自签名SSL证书用于测试(支持通配符子域);它还没有过期,所以我不确定为什么它突然成为一个问题。
解决方案:不要在本地使用 https 并更新我的 .htaccess 文件,以仅在实时站点 (mysite.com) 而非开发站点 (mysite.test) 上强制使用 https:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteCond %{HTTP_HOST} mysite.com$
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Run Code Online (Sandbox Code Playgroud)
我还卸载了 Apache 和 OpenSSL,但我认为这并不能解决问题。
| 归档时间: |
|
| 查看次数: |
773 次 |
| 最近记录: |