微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP-FPM – 上游提前closures连接,同时读取响应头

已经看到了同样的问题 – 上游过早closures连接,而从上游读取响应头,客户端但是,正如Jhilke Dai说,它根本没有解决,我同意。 在Nginx + PHPFPM安装上有同样的确切错误。 当前软件版本:FreeBSd9.1上的Nginx 1.2.8 PHP 5.4.13(cli)。 实际上,隔离这个错误,并确保它发生时试图导入大文件,大于3 MB到MysqL通过PHPMyadmin。 当达到30秒的限制时,还计算后端closures连接。 Nginx错误日志抛出这个

[error] 49927#0: *196 upstream prematurely closed connection while reading response header from upstream,client: 7X.XX.X.6X,server: domain.com,request: "POST /PHP3/import.PHP HTTP/1.1",upstream: "fastcgi://unix:/tmp/PHP5-fpm.sock2:",host: "domain.com",referrer: "http://domain.com/PHPmyadmin/db_import.PHP?db=testdb&server=1&token=9ee45779dd53c45b7300545dd3113fed"

我的PHP.ini限制相应提高

upload_max_filesize = 200M default_socket_timeout = 60 max_execution_time = 600 max_input_time = 600

my.cnf相关的限制

max_allowed_packet = 512M

Fastcgi限制

优雅的Apache重新启动清除APC吗?

Windows中的用户空间APC队列长度

APC 3.1.x有多稳定?

如何findapc.PHP文件的位置?

在XAMPP上激活APC(Windows)

location ~ .PHP$ { # fastcgi_split_path_info ^(.+.PHP)(.*)$; fastcgi_pass unix:/tmp/PHP5-fpm.sock2; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_intercept_errors on; fastcgi_ignore_client_abort on; fastcgi_connect_timeout 60s; fastcgi_send_timeout 200s; fastcgi_read_timeout 200s; fastcgi_buffer_size 128k; fastcgi_buffers 8 256k; fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k;

试图改变fastcgi超时以及缓冲区大小,这没有帮助。 PHP错误日志不显示问题,启用所有通知,警告 – 没有用的。 也尝试禁用APC – 没有效果

APC在哪里存储操作码和用户variablescaching?

新的APCu APC用户caching是否在进程之间共享?

禁用或删除apc

使用PHP 5.4.4和APC 3.1.10成功地处理高stream量的任何人?

Windows Server 2008上的PHP APC(PHP 5.4.3 – x64)

我有这个相同的问题,经常在我的开发机器(OSX + Nginx + PHP-fpm)上随机获得502 Bad Gateway,并通过更改/usr/local/etc/PHP/5.6/PHP-fpm中的一些参数来解决它。 CONF:

我有这个设置:

pm = dynamic pm.max_children = 10 pm.start_servers = 3 pm.max_spare_servers = 5

…并将其更改为:

pm = dynamic pm.max_children = 10 pm.start_servers = 10 pm.max_spare_servers = 10

…然后重新启动PHP-fpm服务。

这个设置是基于我在这里找到的:[ https://bugs.PHP.net/bug.PHP?id=63395%5D

你的脚本需要多长时间来计算? 尝试在PHPNginx巨大的超时设置,并在请求期间监视您的系统。 然后调整您的值以优化性能

另外,在PHP-FPM中降低日志级别,可能会有一些类型的警告,信息或调试跟踪,可以给你一些信息。

最后,请注意PHP-FPM中可用的子进程的数量。 也许Nginx正在挨饿,等待一个PHP-FPM的孩子可用。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐