Articles of php fpm

如何使用nginx + PHP-FPM启用PHP的flush()?

我正在使用PHP-FPM的nginx(已安装APC)。 我需要PHP的flush()来工作。 这可能吗? 到目前为止我尝试过的东西: 禁用php.ini所有输出缓冲以及输出压缩。 禁用nginxconfiguration中的gzip 。 将nginx的fastcgi_*缓冲设置和fastcgi_max_temp_file_size设置为零。 我相信我一定会错过一些东西,因为我在这里和其他地方跑过很多post,人们声称他们已经有所作为,但是我看起来没有运气。

nginx和HTTP Referer

我正在使用nginx和php5-fpm一起使用以下fastcgi_params文件: fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param HTTPS $https; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param QUERY_STRING $query_string; fastcgi_param REDIRECT_STATUS 200; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param REQUEST_URI $request_uri; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_NAME $server_name; […]

获取“您正在寻找的页面暂时不可用。 请稍后再试”

我有一个vps运行Ubuntu + LEMP + Varnish。 一切都很好,直到我更新了服务器软件。 现在我在每页上都会看到“您正在寻找的页面暂时无法使用,请稍后再试”。 (标题响应是502) 我试图弄清楚。 这是我在更新的时候得到的。 以下是www.conf的不同之处: — /etc/php5/fpm/pool.d/www.conf 2013-10-22 14:30:39.000000000 +0000 +++ /etc/php5/fpm/pool.d/www.conf.dpkg-new 2014-06-20 00:40:35.000000000 +0000 @@ -30,7 +30,7 @@ ; specific port; ; '/path/to/unix/socket' – to listen on a unix socket. ; Note: This value is mandatory. -listen = /var/run/php5-fpm.sock +listen = 127.0.0.1:9000 ; Set listen(2) backlog. A value […]

标题未设置似乎不与apache 2.4.10和php-fpm一起使用

我试图通过使用HTTP标头将php代码中的头文件传递回apache访问日志,如下所示: Header note X-Userid userid Header unset X-Userid LogFormat "%h %l %{userid}n %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" combined_with_php_userid CustomLog /var/log/apache2/access_log combined_with_php_userid 使用mod_php ,用户标识按预期插入到日志中,而标题在发送到客户端之前未被设置。 当通过php-fpm运行时,使用下面一行,userid不会被插入到日志中,也不会在客户端HTTP头文件中取消设置。 ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9001/var/html/$1 最初我使用的是apache_note但这只适用于mod_php 。 我发现上面的解决scheme是将数据从PHP传递到Apache / php-fpm或nginx,但似乎并不适用于php-fpm。 有什么我需要启用或设置为Header unset php-fpm下工作? 虚拟主机configuration: <VirtualHost *:80> ProxyPassMatch ^/(.*\.php(/.*)?)$ fcgi://127.0.0.1:9001/web/ee2/sites/site.com/$1 ServerAdmin [email protected] DocumentRoot /web/ee2/sites/site.com ServerName site.dev Header note X-Userid userid Header unset X-Userid […]

Apache:设置php-fpm chroot后,找不到“File Not Found”

我在使用CentOS 7运行Apache 2.4的php-fpm上实现chroot的最后一步很苦恼。 我已经成功安装并testing了没有chroot的php-fpm连接。 但是一旦我将chroot指令添加到/etc/php-fpm.d/file.conf中的conf文件中,就会得到一个“File Not Found”, 就像其他人所经历的一样 。 这是我的php-fpm conf文件: [site1.com] user = user1 group = user1 listen = /var/run/php-fpm/site1.com.sock listen.owner = user1 listen.group = user1 php_admin_value[disable_functions] = exec,passthru,shell_exec,system php_admin_flag[allow_url_fopen] = on php_admin_value[short_open_tag] = On php_admin_value[doc_root] = / php_admin_value[error_log] = /logs/php-errors php_admin_flag[log_errors] = on pm = ondemand pm.max_children = 5 pm.start_servers = 2 pm.min_spare_servers […]

一个php5-cgi进程使用100%cpu

我有一个专门的服务器运行Debian 6,Nginx的1.07,PHP 5.3与PHP的FPM和percona的MySQL 5.1。 我只是最近设置了服务器,只有一个站点在上面运行。 我遇到的问题是,即使我有10个PHP的fastcgi进程设置,但1个PHP5-CGI进程消耗100%的CPU,而其他9消耗几乎0%。 目前,整个服务器速度很慢,站点也是如此。

php5-fpmconfiguration下午 – (节点)进程pipe理器设置节点在更多的外行人术语

我有以下configuration为php-fpm [www] listen = 127.0.0.1:9000 listen.allowed_clients = 127.0.0.1 user = www-data group = www-data pm = dynamic pm.max_children = 50 pm.start_servers = 25 pm.min_spare_servers = 5 pm.max_spare_servers = 35 pm.max_requests = 2500 pm.status_path = /php-status 我阅读这个文档页面 。 希望更多的关于pm相关设置的人性化解释。 例如,pm = dynamic是什么? 还有其他可能的设置为pm =? pm.max_children设置将要服务的同时请求数量的限制。 那么这是否意味着如果我有51个不同的访问者,php-fpm不能处理第51个访问者到这个网站? 那会发生什么? 第51位访客是否得到404? 我比操作更开放,所以会更加人性化的解释。

php5-fpm:bash脚本在重启之前检查configuration

我写了一个脚本来在Nginx上创build新的虚拟主机。 该脚本创build了Ningx vhostconfiguration文件,vhost用户和dirs,php-fpm池文件。 在脚本的最后,我想在重新启动php-fpm之前检查configuration是否正常。 对于Apache,我做apachectl graceful ,但是有可能做类似于php5-fpm -t ?

使用PHP5-FPM的I / O错误,ptrace(PEEKDATA)失败

我有很多这样的: [NOTICE] child 19214 stopped for tracing [NOTICE] about to trace 19214 [ERROR] ptrace(PEEKDATA) failed: Input/output error (5) [NOTICE] finished trace of 19214 [WARNING] [pool www] child 19208, script 'blahblah.php' executing too slow (30.041419 sec), logging [NOTICE] child 19208 stopped for tracing [NOTICE] about to trace 19208 [ERROR] ptrace(PEEKDATA) failed: Input/output error (5) [NOTICE] finished […]

无法在Apache上安装PHP-FPM(无法连接到FastCGI服务器)

我一直有问题安装php-fpm与apache2-mpm-worker 。 他是我所遵循的向导 。 根据指南的步骤5, Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -host 127.0.0.1:9000 -pass-header Authorization 但是我找不到/usr/lib php5-fcgi ,只能find/usr/bin/php5-cgi和/usr/bin/php-cgi ,我不确定它们是否相同。 所以我改变了第5步的内容: Alias /php5-fcgi /usr/bin/php5-fcgi FastCgiExternalServer /usr/bin/php5-fcgi -host 127.0.0.1:9000 -pass-header 在重新启动Apache,它的日志给了错误: [notice] caught SIGTERM, shutting down [alert] (4)Interrupted system call: FastCGI: read() from pipe failed (0) [alert] (4)Interrupted system call: FastCGI: the PM is shutting down, Apache seems […]