Articles of PHP

Apache的PHP包括不工作 – CentOS7

我有一个在Apache上运行的PHP应用程序。 此前它在CentOS6操作系统上运行没有任何问题。 现在我们已经把操作系统升级到了CentOS7。 但应用程序不工作。 不知道相同的PHP应用程序不能正常工作在新的操作系统。 debugging完这个问题之后,注意到php的“include”选项正在工作。 我需要在新的CentOS7服务器上安装任何东西吗? 。 即使我尝试了不同的CentOS7机器。 同样的问题。 有人请帮助我。

由于PHP-FPM侦听队列,站点变得不可访问,CPU触及100%

我一直在绞尽脑汁,试图解决这个问题,我的生产服务器上每隔几小时随机出现一个Wordpress博客(体面stream量:2000个用户实时平均日,5000+个好日子,每分钟浏览量从300到700+)。 我使用Newrelic监视性能,我注意到一个奇怪的事情: 每几个小时(随机),PHP-FPM池的状态如下(昨天的实际状态) pool: www process manager: static start time: 02/Jan/2017:05:03:16 -0500 start since: 27290 accepted conn: 1107594 listen queue: 777 max listen queue: 794 listen queue len: 40000 idle processes: 0 active processes: 100 total processes: 100 max active processes: 101 max children reached: 0 slow requests: 0 重新启动PHP-FPM和nginx解决了这个问题,但是在几个小时后又发生了。 任何帮助表示赞赏。 请指导我 服务器设置: DigitalOcean 48GB […]

即使使用zz前缀也无法加载mailparse

我已经阅读了大量的文章,指出mailparse需要在mbstring之后加载,但是,即使在用zz加前缀mailparse的时候,它仍然存在相同的问题,我真的很想知道为什么。 虽然我仍然在模块列表中看到它。 [root@intranet:~]# php -m PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/zz-mailparse.so' – /usr/lib64/php/modules/zz- mailparse.so: undefined symbol: mbfl_convert_filter_flush in Unknown on line 0 [PHP Modules] bz2 calendar Core ctype curl date dom ereg exif fileinfo filter ftp gd gettext gmp hash iconv imap intl json libxml mailparse mbstring mcrypt mhash mysql mysqli […]

我有两个版本的PHP安装; 我该如何清理/控制哪些参考?

运行CentOS + Apache + PHP + MySQL 运行yum list installed *php*给我这个: newrelic-php5-common.noarch 4.23.4.113-1 @newrelic php.x86_64 5.3.3-46.el6_6 @updates php-cli.x86_64 5.3.3-46.el6_6 @updates php-common.x86_64 5.3.3-46.el6_6 @updates php-devel.x86_64 5.3.3-46.el6_6 @updates php-gd.x86_64 5.3.3-46.el6_6 @updates php-mysql.x86_64 5.3.3-46.el6_6 @updates php-pdo.x86_64 5.3.3-46.el6_6 @updates php-pear.noarch 1:1.9.4-4.el6 @base php-pecl-apcu.x86_64 4.0.4-1.el6 @epel php-pecl-zendopcache.x86_64 7.0.3-1.el6 @epel php54.x86_64 2.0-1.el6 @centos-sclo-rh php54-php.x86_64 5.4.40-4.el6 @centos-sclo-rh php54-php-cli.x86_64 5.4.40-4.el6 @centos-sclo-rh php54-php-common.x86_64 5.4.40-4.el6 […]

Docker,Nginx和PHP7:错误111连接被拒绝,同时连接到上游

我运行了一个NGINX-PHP7-COMPOSER映像,效果很好,但是在使用Slim Framework的时候,我不得不改变Nginx的默认configuration,使URL重写。 现在它在日志中显示这个错误: 2017-01-21 14:38:34,357信息成功:php-fpm7进入RUNNING状态,进程保持1秒以上(startsecs) 2017-01-21 14:38:34,359信息成功:nginx进入RUNNING状态,进程保持1秒以上(startsecs) 2017/01/21 14:38:37 [错误] 15#15:* 1连接()失败(111:连接被拒绝),当连接到上游时,客户端:172.18.0.1,服务器:auth-api,请求:“GET / hello HTTP / 1.1“,上行:”fastcgi://172.18.0.6:9000“,主机:”localhost:9100“ “GET / hello HTTP / 1.1”502 537“ – ”“Mozilla / 5.0(Macintosh; Intel Mac OS X 10_12_2)AppleWebKit / 537.36( KHTML,像Gecko)Chrome / 55.0.2883.95 Safari / 537.36“ 我装载的configuration文件被加载(我用nginx -T检查了bash): server { listen 80; server_name auth-api; index index.php; root /var/www/html; location / […]

PHP守护进程显示“已停止”状态 – 无法在后台运行php脚本

我试图在后台(Linux / Centos 6.8)中启动一个PHP脚本,在命令后面加上&符号。 但是,“作业”列出了状态为[1] +停止的脚本。 发出“bg 1”在后台运行脚本仍会导致“[1] +停止”输出。 我可以发出'fg 1'脚本运行在前台没有问题。 我究竟做错了什么? 我使用> output.txt 2> error.txt将stdout和stderrpipe道传输到文件 该脚本发出一些shell命令,包括wget。 感谢您的任何信息澄清这一点。

MySQL最大连接数

如果“max_connections”设置为“75”,这是否意味着75个人最多可以访问数据库,直到连接closures? 在WordPress的网站上,当访问者加载网站时,是否会build立MySQL连接? 如果是这样,它会立即closures吗? 如果WordPress网站不允许评论或发布/上传任何forms,是否有任何数据库连接需要? 或者只是最初拉动WordPress? ach页面是否需要新的连接? 如果我在一个VPS上运行3个WordPress网站,max_connectionsvariables全局覆盖3个数据库,对吗? 澄清一下,所有的数据库共有75个连接,而不是75个,对吗? 调整max_connectionsvariables时是否存在依赖或必须更改的variables?

Apache2,PHP5,Code Igniter和PGSQL

我通常熟悉堆栈,我遇到一个奇怪的问题。 当我打电话给一个网页发送一个请求,使得postgres花了很长时间来回应,因为这个表很大。 我的Apache2挂起没有其他请求到我的网站将返回,甚至没有网页查询小表,并返回所有的长。 他们甚至不会在appache access.log中login 组态 **php.ini** max_execution_time 300 **apache2.conf** TimeOut 300 当我重新启动我的服务器werentlogin的请求通过,并被服务,但仍然是一个长期失败。 我的想法是,一个网页不应该影响任何其他请求,因为每个脚本自己运行,并创build一个新的连接到数据库。 我不认为它的操作系统,因为我正在开发一个Windows笔记本电脑(XAMP)和部署在Debian服务器上。 无论是运行在服务器上的Debian或我的本地主机的行为是一样的。

由于php-pear问题,无法删除/重新安装软件包

每次我使用apt-get相关的命令来安装任何软件包,我得到下面的错误, dpkg: error processing php-pear (–configure): package php-pear is not ready for configuration cannot configure (current status `half-installed') Errors were encountered while processing: php-pear E: Sub-process /usr/bin/dpkg returned an error code (1) 有人可以build议如何克服这一点? 我可以重新安装或删除php梨,因为我得到相同的错误。 谢谢。

用OpenSSL编译PHP 5.3.29失败

我们需要在我们的Ubuntu 16.04服务器上安装一个PHP5.3,用于我们将要replace的传统第三方应用程序,但是我们仍然需要一段时间。 因此,我使用FPM编译了PHP5.3.29,以使其与我们的Nginx堆栈一起工作。 但是,我正在努力编译OpenSSL到PHP。 所以这就是我迄今所做的: 使用OpenSSL的系统安装(v 1.0.1j) 尝试使用–with-openssl编译PHP失败,运行make时出现以下错误: /usr/bin/ld: ext/openssl/openssl.o: undefined reference to symbol 'SSL_get_verify_result@@OPENSSL_1.0.0' //lib/x86_64-linux-gnu/libssl.so.1.0.0: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status Makefile:267: recipe for target 'sapi/fpm/php-fpm' failed 所以我search了networking,find了这个错误的修复方法,但是却找不到我能find的那个方法。 然而,我遇到的一篇文章提到,通过使用较旧版本的OpenSSL,问题可以被绕开。 这就是我所尝试的。 使用自编旧版本的OpenSSL(v 0.9.8w) 我使用flag –prefix=/opt/openssl编译了OpenSSL,以确保它不会影响OpenSSL的系统安装。 之后,我尝试使用–with-openssl=/opt/openssl再次编译PHP,并顺利进行。 然而,在使用需要PHP 5.3的应用程序运行一些testing之后,当使用带https https URL的cURL请求时,我迅速开始看到正在为我的请求提供服务的FPM-Child。 所以我debugging了这个有故障的孩子,并且能够把原因追溯到OpenSSL。 好 – 现在该怎么办? 编译没有OpenSSL的PHP 所以我决定完全省略OpenSSL扩展,实际上在编译时都是成功的(这里没有什么惊喜),并且使用我刚刚编译的PHP安装,通过curl请求https […]