Articles of PHP的FMP

PHP-FPM的工作人员搞乱php.ini加载?

我在Ubuntu Natty上从源代码安装了PHP 5.3.8。 我还在configuration期间启用了FPM。 不过,我一直在安装PHP扩展的问题。 当我将扩展名添加到我的php.ini文件(例如extension=apc.so )并重新启动PHP(即/etc/init.d/php-fpm restart )时,出现如下所示的错误: Starting php-fpm PHP Warning: Module 'apc' already loaded in Unknown on line 0 <br /> <b>Warning</b>: Module 'apc' already loaded in <b>Unknown</b> on line <b>0</b><br /> PHP Warning: Module 'geoip' already loaded in Unknown on line 0 <br /> <b>Warning</b>: Module 'geoip' already loaded in <b>Unknown</b> […]

MySQL,PHP-FPM,APC,Varnish和Nginx优化WordPress / W3总caching?

我正在build立我的第一个VPS,它似乎运作良好。 在Ubuntu 12.04服务器上安装了Nginx,php-fpm(作为unix套接字),APC,Varnish和MySQL以及OnApp,并且一切正常,并且速度非常快,至less在我的最后。 Atm我有1个核心的VPS(Xeon(R)X5660是VPS使用的iirc),1.2GHz和768MB RAM,一切都受限于OnApp。 做一个abtesting,我得到这个: ab -c 10 -n 1000 http://198.136.50.39/ This is ApacheBench, Version 2.3 <$Revision: 655654 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking 198.136.50.39 (be patient) Completed 100 requests Completed 200 requests Completed 300 requests Completed 400 requests Completed 500 requests Completed […]

502大file upload错误的网关:Nginx + PHP-FPM

我在nginx上运行php-fpm 我有我的php.ini值设置如下 upload_max_filesize = 100M post_max_size = 128M max_execution_time = 180 我也设置我的client_max_body_size为4G。 当我尝试上传小文件的时候,但是当我尝试上传35M的时候,我得到了一个502,当我查看日志时, upstream sent unexpected FastCGI record: 3 while reading response header from upstream 有任何想法吗? 我已经尝试了nginx的线程,但他们并没有真正的帮助。 提前致谢

Php-fpm在启动时显示“失败”

我运行Ubuntu 13.04。 我安装了nginx包,并从源代码编译php-5.4.15运行php-fpm。 问题是,当我这样做 sudo service php-fpm start 我有 Starting php-fpm …………………………….. fail 但是php-fpm确实启动了,我可以在我的本地nginx服务器上显示一个phpinfo页面,所以我不明白为什么我得到这个失败信息。 同样的事情,如果在启动php-fpm之后,我是这么做的 sudo service php-fpm restart 我有 Gracefully shutting down php-fpm warning, no pid file found – php-fpm is not running ? Starting php-fpm [30-May-2013 07:54:23] ERROR: unable to bind listening socket for address '127.0.0.1:9000': Address already in use (98) [30-May-2013 07:54:23] […]

识别瓶颈 – Nginx + PHP-FPM + Ubuntu

我有一个运行PHP-FPM和Nginx的Ubuntu服务器安装程序 – 我做了一些压力testing,并经历了一个大幅度的减速。 我用250用户loadImpact。 我发现,在testing期间,PHP并没有放慢速度 – 页面渲染时间没有从0.04秒(我认为这是因为APCcaching)而动摇。 这些资产的实际传输是如此之久。 不知道这是一个networking的限制,还是一个Nginx的问题 – 我假设它是Nginx的B / C服务器是在Rackspace的云服务器,我认为他们的networking是非常强大的(也许这是一个愚蠢的假设… )。 从命令行运行“顶部”显示一个nginx进程在任何给定的时间运行,我认为这是瓶颈 – 而且,CPU几乎没有被使用。 值得一提的是我使用的是512MB RAM云服务器,但是RAM的使用率也很低,所以我很确定我没有configuration好Nginx。 我在下面粘贴了我的conf … 我对此很新,所以如果我没有提供足够的信息,请提前道歉。 user www-data; worker_processes 4; #using a quad-core VPS server error_log /var/log/nginx/error.log; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; access_log /var/log/nginx/access.log; sendfile on; tcp_nopush on; #keepalive_timeout 0; keepalive_timeout […]

php(5.3.8)和apache2使用php-fpm时如何设置httpd.conf?

我想用php(5.3.8)在apache2中使用fastcgi。 我在apache中安装了fastcgi_module,并且用–enable-fpm编译了php。 我还发现了一些教程,在他们的设置中有两种方法: FastCgiServer / usr / local / apache2 / fcgi-bin / php-cgi -processes 10 要么 FastCgiExternalServer / usr / local / apache2 / fcgi-bin / php-cgi -host 127.0.0.1:9000 但是我无法在php 5.3.8中findphp-cgi 。 接下来我应该怎么做?如何在使用php-fpm和php(5.3.8)和apache2时设置httpd.conf?

在只有已知的PHP软件(或:需要替代的非PHP CMS)系统上的PHP安全性

我对PHP的安全logging和项目处理安全性的方式深表反感。 不幸的是,我必须部署一个CMS,我需要一个现代的主题。 到目前为止,我已经看到几乎无处不在,但总是归结为基于PHP的CMS,因为这是大众正在使用和devise师正在devise的。 🙁 现在我已经解决了Drupal这是一个妥善维护的项目,并处理安全漏洞的典范。 但是一般来说还是有公开部署php的苦味。 到目前为止,我所做的是: 链接的PHP与PHP-FPM:套接字,chroot,无特权的自己的用户,… 增强了我的web根目录下的文件系统权限 留在PHP 5.3.xw / suhosin活跃(没有suhosin为5.4.x) 保持Drupal不需要的PHP的每个模块 … 我主要关心的是PHP,诚实。 我还能做些什么来保护主机? 对于那些对Drupal和PHP有更多经验的人(自己是一个C ++开发人员),PHP在一个只部署一个已知包,没有用户PHP脚本或类似的系统的系统上会带来多大的安全风险? 即使听起来像这样,我不是Linux或服务器的新手。 🙂 PHP是不是我主要的游戏区域,由于其反复和持续的坏消息,我对网页开发缺乏兴趣… 或者,我真的很喜欢使用依赖于Perl,Python甚至Ruby的CMS。 所以,如果有人知道一个好的CMS系统,有很好的付费主题可用,支持灵活的布局以及博客引擎,并且还支持PostgreSQL(我select的数据库),我会全力以赴的… 感谢您花时间阅读这个有点奇怪的post。 🙂 更新:我忘记提到,不言而喻,我妥善维护我的服务器,有一个限制性的防火墙,做最好的人可以做这些天。

在Ubuntu 12.04重新启动后,php5-fpm不会初始化

当我重新启动我的Ubuntu 12.04时,php5-fpm不会自动运行。 但是nginx会自动启​​动。 我正在使用Unix套接字而不是TCP \ IP 这是服务器重启后/etc/init.d/php5-fpm status的输出: /etc/init.d/php5-fpm状态 * php5-fpm没有运行

单个nginx虚拟主机中的不同php-fpm池

我在网上search了一段时间,但不能成功。 我的问题如下: 我想在一个nginx虚拟主机中使用不同的php-fpm池,但是却找不到configuration我的vhostconfiguration的location ~ \.php$ {…}一部分来支持两个不同的工人池。 我唯一的解决scheme是将Web请求redirect到另一个nginx站点。 先谢谢你

请求不会在使用Nginx和PHP-FPM的pm.max_children之后排队

只要池达到pm.max_children,Nginx就会在尝试向PHP-FPM发送新请求时开始超时。 “最大侦听队列”在php状态页面中始终为0。 PHP-FPM 5.5.16 Nginx 1.6.1 这里是一个php-fpm池的例子: [example] catch_workers_output = no ; Configure listener listen = /var/run/php-fpm/example.sock listen.backlog = 65535 listen.owner = nginx listen.group = nginx ; Unix user/group of processes user = nginx group = nginx ; Choose how the process manager will control the number of child processes. pm = ondemand pm.max_children = […]