Articles of PHP5

我怎样才能找出哪些PHP扩展没有被使用?

我pipe理一个服务器(运行Ubuntu),它托pipe我们客户的网站几十个不同的基于PHP的网站,主要是小型网站,但也有一些CMSes和论坛的安装。 我使用get_loaded_extensions()方法来查看我已经加载了什么扩展。 为了帮助简化服务器(删除不必要的扩展,使升级更容易,稍微提高速度),我想删除没有被任何网站使用的扩展。 我目前有54个不同的扩展加载。 我可以很容易地从我知道使用的列表中删除其中的一些,但是我不太确定的其他列表。 有什么方法可以看到最近没有使用过的扩展名?

PHP页面不时运行缓慢

我有VPS 2GB的RAM和8个CPU核心的限制。 我在这个VPS上有5个站点(其中一个只是为了testing,没有游客免除我)。 所有5个网站是图像画廊,如壁纸网站。 上周我注意到一个网站(主域名,用于名称服务器,也是大多数stream量,访问者)的问题。 该网站有两个图像画廊,一个是几年前制作的旧静态html画廊,另一个是主要由ZENPhoto CMS提供支持。 另外,我在同一个VPS上的另外两个站点(在一个运行的站点上,在一个testing站点上)上也有相同的图库CMS。 在其他两个网站,我有不同的PHP驱animation廊。 问题是,经过一段时间(从Apache重新启动后10分钟到几个小时不等),在主站点加载页面变得非常缓慢,或者我得到503 Service Temporarily Unavailable错误。 所以页面变得不可用。 但只是与新的CMS图库的一部分,具有静态html页面的网站的旧部分工作得很快,很好。 同样CMS图库和其他两个具有不同的PHP驱动库的其他两个网站同时工作正常和快速。 我认为这个主站点上的CMS必须是CMS,因为其他站点工作的很好。 然后,我尝试在该主站点上打开联系人和留言簿页面,该页面不在该CMS之外,但也是PHP页面,并且不会加载,但同一联系人的php scipts正在同时在其他站点上工作。 所以,当网站开始挂起,只有PHP生成的内容不工作,就像我说的其他静态页面正在工作。 而且,只有在那个主站点上我有问题。 然后,我需要重新启动Apache,重启后,一切都变得好而快,一段时间,比主站点上的PHP页面慢得多。 如果我不重新启动apache缓慢需要一些时间(几分钟,几小时,取决于stream量),并在此期间PHP的潜水内容加载非常缓慢或不可用在该网站上。 过了一段时间之后,所有的事情都开始奏效了,一段时间又一次又快又快了。 在stream量更大的小时内,PHP内容缓慢加载或不可用,stream量较小的时间段内,有时速度较快,有时比平时慢一点点。 而且,只有在这个主站点上,并且只有PHP驱动页面,即使在大多数stream量时间内,静态页面也可以快速工作,而其他具有相同CMS的站点工作也很快。 目前,我在该网站上有大约7000个独立访问者,但即使每天有11500个访问者,网站也能很好地工作。 所有网站(每个独立访问者大约3页)的访客总数约为17000人。 当站点开始减速有时在Apache的状态,我可以看到这样的事情: mod_fcgid状态: 总FastCGI进程:37 进程:php5(/ usr / local / cpanel / cgi-sys / php5)pid主动空闲状态 11300 39 28 7工作 11274 47 28 7工作 11296 40 29 3工作 11283 45 […]

IIS 6上的PHPconfiguration未加载Mysql扩展

我对PHP的知识有限。 我将衷心感谢您的帮助。 我遇到了“PHPMyAdmin不工作,因为mysql扩展未加载”的问题。 我检查phpinfo和所有其他扩展(GD,MS SQL等)加载除了MySQL。 Web Server: IIS 6 PHP Version: 5.2.6 and I also tried 5.2.17. MySQL version: 4.1 我在PHP中尝试了下面的代码。 <?php echo '<br> php running'; mysql_connect("localhost:3306", "root", "password") or die(mysql_error()); echo "Connected to MySQL<br />"; ?> 它只打印出php运行,并没有连接到数据库。 我检查了我的web.config文件,连接string如下,它正在处理.net <add name="DBConnectionString" connectionString="Server=localhost;Database=users;Uid=root;Pwd=password;CharSet=utf8;"/>

初次加载数据库驱动页面非常慢; 为什么? 阿帕奇+ PHP

我们公司的一个Apache / PHP / MySQL驱动的站点正在被移动到一个新的服务器上。 它还没有转移到生产,所以只有两个用户左右。 但是,使用数据库加载页面可能需要几秒钟的时间。 例如:首页加载时为13.8秒,后续加载时为0.01-0.02秒。 这是一个包含30个查询的页面。 我猜想会涉及到某种types的MySQLcaching,但是我的主要问题是:为什么初始负载非常慢? 有什么可以从这个诊断吗? 特别是在MySQL SHOW STATUS输出中有一些很大的数字让我担心。 顶级输出: top – 12:22:33 up 163 days, 22:45, 7 users, load average: 0.09, 0.16, 0.29 Tasks: 960 total, 1 running, 959 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3%us, 0.7%sy, 0.0%ni, 99.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 1025492k total, 700924k used, 324568k […]

在CentOS 5.5上安装php-xml时出现错误

可能重复: CentOS 5.6:如何解决php-mcrypt和php-common的php53 RPM依赖冲突? 我正在尝试使用PHP DOMDocument类,它需要安装php-xml (我正在运行CentOS 5.5)。 然而,在运行yum install php-xml我收到错误“php53-common与php-common冲突”,所以安装失败。 我不知道该去哪里,所以任何提示apprciated。 谢谢。

是否可以通过WHM(HostDime)在CentOS 4.9上将php5.2升级到php5.3,

他们告诉我,他们不支持使用这种types的configuration,但在某个时候我们已经从他们那里运行了…我们已经和他们合作了8年多了。 事情是,我们需要升级到php5.3而不失去对php4的支持。 不知道该怎么做。 在hostdime的家伙已经表示,他们不会帮助它。 但是,我知道有可能以某种方式(可能重新编译Apache再次?)。

带有大量图像的IIS + PHP +页面=间歇性403错误

我正在使用最新的Server 2008 R2 Datacenter,运行IIS 7.5和PHP 5.3.6 / FastCGI 在具有大量图像(60+)的PHP页面上,某些图像无法加载 它并不总是相同的图像 – 在每个页面刷新以前工作的图像可能无法加载,而现在没有的图像 查看Firebug中的Net选项卡可以看出,失败的图像请求是403错误 所有图像都位于服务器上,图像目录具有正确的权限 我相信这个问题是请求限制的结果 我所有的研究这个问题的尝试都指向了IIS中的maxConnections设置,但我的设置是最高/默认值4294967295(maxBandwidth) 我也在同一个IIS安装上运行一个ColdFusion站点,并且在有大量图像的页面上不会遇到403错误 我仍然认为有另一个连接限制(在PHP或FastCGI?)覆盖IIS连接限制 我没有看到任何在php.ini中看起来像请求限制的东西,我错过了什么? 任何帮助将不胜感激,谢谢

如何在Windows 2008上使用Web Platform Installer设置PHP 5.4.0

我刚刚在Windows 2008上使用Web平台安装程序安装了PHP 5.4.0,但是当我尝试请求一个php时,我仍然得到了404s。 任何人都知道Microsoft隐藏了他们的PHP 5.4.0版本的安装/设置文档?

在不同的环境下使用AddHandler将文件parsing为PHP

我现在很困惑如何在不同的环境中将文件parsing为带有AddHandler PHP。 本地服务器 : Windows 7 / Apache2.2 / PHP 5.2( thread safe ) AddHandler x-httpd-php .php # does not work AddHandler x-httpd-php52 .php # does not work AddHandler application/x-httpd-php .php # works 而我刚刚升级PHP到5.3(切换到non thread safe ) AddHandler x-httpd-php .php # does not work AddHandler x-httpd-php53 .php # does not work AddHandler application/x-httpd-php .php # […]

在共享的apache上保护php

我将在服务器上安装apache + php,其中两个用户A和B将部署他们的网站。 为了安全起见,我试图实现用户空间的隔离:那就是站点A的脚本不应该能够读取站点B中的文件。 为了达到这个目的,我安装了suphp。 用户A的网站文件由A:A拥有,Perm = 700,B的用户由B:B拥有,Perm = 700。 Suphp工作得很好,但是apache抱怨读取.htaccess的权限。 我怎样才能让apache读取A和B的每个目录中的.htaccess,同时保持站点A和站点B之间的隔离? 我玩所有权(组= www数据)和权限(750),但我发现没有办法保持隔离授予。 任何想法? 也许通过以root身份运行apache,但在这种情况下是否有任何缺点?