Articles of PHP

PHP不能识别IIS6自签名证书

我在这里和谷歌search了很多,找不到解决我的问题。 简而言之,我将一个自签名SSL证书安装到在IIS6 / Windows Server 2003上运行的testingWeb服务器上。 自签名ssl证书是使用IIS6工具生成的。 如果我去https // mywebsite.com我得到“不正确的SSL证书”的警告消息,我只要点击继续,它的工作原理。 (正常行为为自签名ssl)。 这适用于HTML,但对于PHP不起作用,phpinfo显示https = off 。 顺便说一句我正在运行PHP 5.2.17。 奇怪的是,在生产服务器,我有完全相同的应用程序的设置,唯一的区别是,在该服务器上我已经安装了一个合法的SSL证书,和PHP信息显示HTTPS =上 。 所以我开始考虑以下几点: 一)PHP不会检测到一个自签名的SSL证书,这是正确的? B)我错过了一些明显的东西,我可以检查什么样的东西? 谢谢!

PHP文件下载,而不是在apache上处理ajax

我有一个小网站,其中一些内容使用AJAX在HTML标记中显示。 内容只是从同一个网站上的另一个页面。 但是,有时不是加载parsing的PHP文件,而是浏览器显示一个下载框。 我下载了这个文件,看起来像是一个混合有二进制或gzip压缩数据的文本文件。 我不能在这里粘贴二进制文件,但是这里有一些头文件: Jul 2012 18:52:16 GMT Server: Apache/2 X-Powered-By: PHP/5.3.10 Content-Encoding: gzip Vary: Accept-Encoding,User-Agent Keep-Alive: timeout=1, max=95 Connection: Keep-Alive Transfer-Encoding: chunked Content-Type: text/html HTTP/1.1 304 Not Modified Date: Sun, 01 Jul 2012 18:52:16 GMT Server: Apache/2 Connection: Keep-Alive Keep-Alive: timeout=1, max=93 ETag: "2fc857-409-4c39691c59b40" HTTP/1.1 304 Not Modified Date: Sun, 01 Jul 2012 […]

Zend Framework的mod_pagespeed提供了404

我正在使用Google的Apache mod_pagespeed模块解决一些问题,以结合CSS,JS等。在过去的几个月中,我开发了基于Zend Framework的新版软件。 我刚刚安装了mod_pagespeed,它似乎没有工作。 我运行Ubuntu Server 11.04和最新的mod_pagespeed模块。 我正在使用Zend Framework 1.11.11并且运行PHP 5,3.3和Apache 2。 当我把我的Apache LogLevel“debugging”,然后我得到以下消息: [Mon Jul 16 10:44:53 2012] [debug] net/instaweb/apache/mod_instaweb.cc(370): [client 217.196.45.116] ModPagespeed OutputFilter called for request /index.php [Mon Jul 16 10:44:53 2012] [debug] net/instaweb/apache/mod_instaweb.cc(391): [client 217.196.45.116] Request not rewritten because: request->status != 200 (was 404) 当访问URL如: http : //development.domain.nl/filter/fietsslot-1967/ 我得到了上述错误。 这可能会导致我重写所有调用index.php由Zend框架build议: RewriteEngine On […]

FcgidProcessLifeTime没有效果

我正在运行PHP处理程序fcgid LoadModule fcgid_module modules/mod_fcgid.so FcgidMaxRequestsPerProcess 3000 FcgidMaxProcesses 3000 FcgidMaxProcessesPerClass 16 FcgidMinProcessesPerClass 1 FcgidProcessLifeTime 7200 FcgidIOTimeout 180 IPCConnectTimeout 60 FcgidIdleTimeout 600 FcgidIdleScanInterval 30 FcgidBusyTimeout 3600 FcgidBusyScanInterval 30 FcgidErrorScanInterval 3 FcgidZombieScanInterval 3 FcgidFixPathinfo 0 FcgidMaxRequestInMem 419430400 FcgidMaxRequestLen 1073741824 每10分钟或更多的进程终止,也设置FcgidProcessLifeTime 7200 我也使用mpm_worker : Timeout 50 <IfModule worker.c> StartServers 16 ServerLimit 1800 MaxClients 1728 MinSpareThreads 75 MaxSpareThreads 250 ThreadLimit […]

奇怪的Apache / PHP和Perl行为错误(70007)

我正在处理一个特殊的情况:我有两台Linux机器,一台是Scientific Linux(v4.8),一台是CentOS(v6.2)。 在SL机器上,我有一个Apache 2.2.9的XAMPP发行版,而在CentOS上,我有Apache 2.2.15(没有XAMPP)。 两台机器都在同一个networking上。 现在,我的情况是这样的:在两台机器上都有完全相同的脚本,PHP,JavaScript和Perl的组合,可以将文件从浏览器上传到服务器。 当我尝试访问SL机器上的脚本时,一切都如预期的那样,而CentOS上的脚本却出乎意料:从一个特定的networking,即防火墙和代理之后,当我试图上传一个小文件,但它工作,但是当我试图上传一个更大的文件(60 MB),Apachelogging下面的错误,并打破。 (70007)The timeout specified has expired: Error reading request entity data, referer: 但是,从不同的位置,这两个脚本的行为如预期,没有错误,即使试图上传500 MB的文件。 我不知道去哪里或要找什么。 我怎样才能解决这个问题? 更新:用Firebug监控networking,我明白了 502 Proxy Error ( The specified network name is no longer available. ) 但是,正如我所说的,这不会发生SL服务器事件,如果我通过相同的代理访问它。 为什么?! 更新2:在工作的机器,SL,我有一个Cache-Control: max-age=0 。 难道这有什么关系吗?

如何削减php-fpm IOPS

我有NGINX + PHP-FPM(通过套接字)+ APC的Amazon EC2实例。 我明白了 像这样在高负载iotop 。 Total DISK READ: 0.00 B/s | Total DISK WRITE: 0.00 B/s TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND 7200 be/4 www-data 0.00 B/s 135.12 K/s 0.00 % 0.00 % php-fpm: pool www 7202 be/4 www-data 0.00 B/s 308.84 K/s 0.00 % 0.00 % php-fpm: […]

文件:: Temp版本0.18要求 – 这只是版本16

我在运行BestPractical RT的服务器上运行YUM。 现在Apache不会启动。 看看错误日志,我得到这个错误: File :: Temp需要0.18版本 – 这只是版本0.16在/usr/lib/perl5/site_perl/5.8.8/MIME/Tools.pm 14行。 我运行CPAN,并安装了File :: Temp,它说它已经有最新版本(0.22)。 为什么给我这个错误?

Amazon S3网站和MySQL备份

我有一个网站(一个数字资产pipe理系统/画廊 – http://www.resourcespace.org )有大量的图像。 网站的总大小,包括图像大约6GB。 该网站是在PHP中,并使用MySQL数据库。 自动备份网站和MySQL数据库并每天晚上推送到Amazon S3的最佳方式是什么? 有没有现成的脚本可以做到这一点?

编译PHP扩展时出错

我试图安装一个用c写的php扩展,并使用mongodb c驱动。 我一直在尝试过去的两天来编译和安装扩展,但即时获取相同的错误。 /usr/bin/ld: /usr/local/lib/libmongoc.a(bson.o): relocation R_X86_64_32S against `bson_numstrs' can not be used when making a shared object; recompile with -fPIC /usr/local/lib/libmongoc.a: could not read symbols: Bad value collect2: ld returned 1 exit status make: *** [thaps.la] Error 1 完整的日志可以在pastbinfind: http ://pastebin.com/iqpqHYpm 我试图安装的扩展名是在bitbucket: https ://bitbucket.org/heinep/thaps 即时通讯使用PHP 5.4与Zend 2.4 Apache 2.2的mongodb C驱动程序V0.5 Ubuntu的12.04 64位

在生产系统上升级PHP的最佳实践

我们有两个负载平衡的Web服务器运行PHP 5.3。 我们已经被开发团队要求将PHP升级到5.4,因为它们需要某些function。 主要的问题是5.3是最新的内置于distros仓库,所以要使用包pipe理器升级,我需要添加另一个第三方仓库。 我本人没有这个问题,但我关心使用来自“非官方”来源的软件包。 另一个select是从源代码编译PHP,但是我想这会阻止我使用包pipe理器在将来的任何阶段进行升级。 所以我想我只是寻找一些指导去哪里。 编译从源代码或从任何旧的回购,声称要提供PHP 5.4安装? 或者也许是我没有考虑过的第三个选项?