在我的网站上,我启动了一个执行批处理的脚本,可以将大量的产品(文本和图像)导入到Mysql数据库中。 我正在监视Phpmyadmin> Status的查询过程,我注意到几分钟后查询的数量从〜900减less到〜30,这意味着脚本停止了! 然后我检查error_log并且实际上有这个错误: [Thu Oct 02 17:09:34 2014] [warn] [client xxx.xxx.xxx.xxx] (104)Connection reset by peer: mod_fcgid: error reading data from FastCGI server [Thu Oct 02 17:09:34 2014] [error] [client xxx.xxx.xxx.xxx] Premature end of script headers: insert_products.php 如何解决呢? 一些信息: VPS server: 1 CPU; 40gb; RAM 1GB OS: CentOS 6.5 (Final) Plesk version: 12.0.18 我通过SSH控制台尝试(阅读本文 ): […]
我把我的网站迁移到新的服务器上。 但是,我得到了显示分数的错误。 这是错误: 在旧服务器上: 我安装了相同的扩展名为PHP。 我错过了什么? 谢谢。 更新: 它与PHP中的默认字符有关。 所以我在php.ini中注释掉了,然后重新启动了Apache。 它工作完美。 default_charset =“iso-8859-1”
PHP 5.5s OPcache是否可以在CGI模式下运行PHP? 或者,这甚至是有道理的,因为它为每个请求分叉和杀死PHP?
我需要在Unix下创build自己的PHP二进制文件(因为我需要一些SGBD选项,这是另一个问题)。 目前我的Apache服务器通过CGI链接到PHP,但是我读了这不是推荐的方式(性能和安全问题…),所以我想用FastCGI支持构build我的PHP。 PHP文档告诉我–enable-fastcgi选项不再存在,我应该看看–enable-cgi选项,但是这个选项并没有出现在文档中。 这是否意味着FastCgi被自动启用? 如果是这样,我怎么能检查FastCGI安装好? 我尝试了一个php -i | grep cgi php -i | grep cgi但它没有给我什么…我发现没有build立在我的系统上的mod_fastcgi.so文件,据我了解,应该由PHP生成,不应该呢? 编辑 apachectl -M | grep cgi apachectl -M | grep cgi给出: proxy_fcgi_module (shared) proxy_scgi_module (shared) cgi_module (shared)
我想我有问题设置Apache24正确。 Apache似乎占用了很多内存,我不知道如何configuration它。 FreeBSD服务器使用了50%的交换空间。 我们正在使用2Gb RAM的FreeBSD VPS上运行带有MySQL 5.6的Magento。 服务器每天只有大约500位独立访问者。 我的知识是有限的。 丝毫的线索将不胜感激。 my.cnf中 [mysqld] innodb_buffer_pool_size = 256M sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES prefork mpm <IfModule mpm_prefork_module> StartServers 3 MinSpareServers 3 MaxSpareServers 6 MaxRequestWorkers 8 MaxConnectionsPerChild 1000 </IfModule> php.ini中 memory_limit = 256M opcache.enable=1 opcache.memory_consumption=192 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.revalidate_freq=60 opcache.fast_shutdown=1 opcache.enable_cli=1 htaccess的 php_value memory_limit 512M 的httpd-default.conf Timeout 30 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 2 […]
我设置了一些环境variables来从PHP $ _SERVER全局variables中获取,但是它不起作用。 variables不在$ _SERVER中,也不在phpinfo()输出中。 我有所有必要的模块启用,我尽我所能地尝试了所有的东西。 我错过了什么? 这是我的虚拟主机: <VirtualHost *:80> ServerName xpad.seinet.com.local ServerAlias www.xpad.seinet.com.local *.seinet.com.local www.*.seinet.com.local SetEnv SYMFONY__DATABASE__NAME__CLIENTE cliente SetEnv SYMFONY__DATABASE__USER__CLIENTE cliente SetEnv SYMFONY__DATABASE__PASSWORD__CLIENTE cliente DocumentRoot "/var/www/xpad-single/web" DirectoryIndex app.php <Directory "/var/www/xpad-single/web"> AllowOverride All Require all granted Allow from All </Directory> Alias /editions_files /publicationProcess3/INPUT_FILES/ <Directory "/publicationProcess3/INPUT_FILES/"> AllowOverride All Require all granted Allow from All </Directory> ErrorLog […]
Debian VPS上的Apache服务器有问题。 经过一段时间(几个小时)的工作,它冻结,没有请求正在处理(服务器允许连接,但没有返回)。 # apache2 -v Server version: Apache/2.2.22 (Debian) Server built: Dec 23 2014 22:48:29 # apache2 -l Compiled in modules: core.c mod_log_config.c mod_logio.c mod_version.c prefork.c http_core.c mod_so.c <IfModule mpm_prefork_module> StartServers 1 MinSpareServers 1 MaxSpareServers 19 MaxClients 19 MaxRequestsPerChild 20 </IfModule> 这个configuration是经过一些testing后,MaxRequestsPerChild似乎有所帮助,但是没有,服务器仍然是frezees。 当服务器被冻结时,它停留在poll系统调用: # strace -p 30145 Process 30145 attached – interrupt to quit […]
我们有以下服务器的细节,我们需要升级Apache 2.4.6到Apache 2.4.12 OS: CentOS 6 Apache : 2.4.6 PHP : 5.5 我知道如何从头安装2.4.12,但我只是想升级当前的Apache 2.4.12,因为我不想损失PHP设置和当前的Apache的其他设置。
环境:Debian 7; PHP 5.4.39; Apache 2.2; ISPConfig 使用Howtoforge的Perfect Server Debian指南,我构build了一个Web服务器来为一些PHP应用程序提供服务。 我的意图是使用php mail()函数使用外部SMTP服务器。 我已经卸载后缀,安装MSMTP更新我的php.ini文件中的sendmail_path 。 我也确认了MSMTP设置的工作。 在更新我的php.ini文件并重新启动服务器后, phpinfo()仍然显示旧的sendmail_path /usr/sbin/sendmail -t -i -fwebmaster@$domain.com而不是我自定义的MSMTPpath"/usr/bin/msmtp -C /etc/msmtprc –logfile /var/log/msmtp.log -a $domain -t" 从phpinfo() ,加载的configuration文件是/etc/php5/cgi/php.ini 。 但是,当我运行php -i | grep Configuration php -i | grep Configuration在shell php -i | grep Configuration ,我得到Loaded Configuration File => /etc/php5/cli/php.ini (注意path的差异?)。 尽pipe如此,我开始更新这两个文件的path,包括所有其他的文件。 他们在这些地方大约有4个不同的版本: /etc/php5/apache2/php.ini […]
我正在运行安装了Kolab Groupware的Debian 7服务器,而不是其他的。 它通常工作得很好,但随机(当然,当我不看,当然)CPU使用率将达到100%,并停留在那里,Apache将变得没有反应,我必须杀死-3 apache2.prefork。 我很确定这是我做的事,因为我没有发现任何人与Kolab有类似的问题。 一些更多信息: SSL是必需的,连接到端口80立即redirect到SSL站点 通过“无响应”我的意思是试图访问任何页面“build立安全连接”,直到浏览器超时。 这包括由mod_status所做的页面,所以在这个问题中给出的解决scheme将不起作用 没有东西写入日志。 这是通常的方式,access.log,error.log和other_vhosts_access.log,它们都是空的。 最近的内容是来自前一天的滚动日志,只显示正常使用,没有任何可疑的 似乎没有人连接到它,所以我怀疑它是超载 它在虚拟机上运行。 虚拟机最初只有一个CPU,所以我想也许是瓶颈,并增加了另一个CPU。 然而,它仍然会发生,但有趣的是,只有一个 CPU达到100%,表明它可能是某种无限循环,据我所知。 不与Apache交互的服务器上的其他所有内容都可以继续正常工作。 我写了一个小小的cron工作来检查CPU的使用情况,并在电子邮件发出峰值时给我发电子邮件,这意味着我几分钟后就可以发现它,但是我仍然无法在日志(包括syslog)中find任何可以说明原因的东西。 这似乎不是周期性的,它发生在一天中的不同时间,人们正在使用它或闲置时。 没有我能find的对应于秒杀的cron工作。 我想如果我知道一种方法来查看PHP运行的方式,而不使用HTTP(S)来执行此操作,或者使用debugging符号编译PHP,我想我可以自己弄明白。 任何人都知道如何做到这一点?