我的一台服务器(Ubuntu 12.04,16CPU,32GB RAM)运行我的网站(Nginx 1.1.19,PHP5-FPM,Php 5.3.10,Symfony2 Web Framework) 突然,用户开始得到HTTP 5 **错误。 当我在服务器上,有大量的磁盘IO,罪魁祸首是[flush] 。 当我使用dmesg浏览内核日志时,显示了[flush]的原因是php5-fpm invoked oom-killer 事件发生时的内核日志条目: Jan 31 12:39:01 ip-10-0-0-160 kernel: [78817.295736] php5-fpm invoked oom-killer: gfp_mask=0x280da, order=0, oom_adj=0, oom_score_adj=0 Jan 31 12:39:01 ip-10-0-0-160 kernel: [78817.295740] php5-fpm cpuset=/ mems_allowed=0 Jan 31 12:39:01 ip-10-0-0-160 kernel: [78817.295743] Pid: 13310, comm: php5-fpm Not tainted 3.2.0-69-virtual #103-Ubuntu Jan 31 12:39:01 […]
我是nginx新手,并且在php5上遇到一些麻烦。 (我有它sorta工作,但不能似乎得到它再次工作。)有2个文件我正在处理,似乎控制nginx和php5-fpm。 /etc/php5/fpm/pool.d/www.conf /etc/nginx/nginx.conf 从php5的www.conf文件中: ;listen = /var/run/php5-fpm.sock listen = 127.0.0.1:9000 来自nginx的conf文件: # fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_pass 127.0.0.1:9000; 当两者都设置为127.0.0.1:9000时,php页面加载空白页面,并且出现这个错误 /var/log/nginx/error.log 2015/09/05 09:06:29 [error] 20085#20085: *1 connect() failed (111: Connection refused) while connecting to upstream, client: <ip>, server: , request: "GET /server.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "address" 当两者都设置为/var/run/php5-fpm.sock时,网页显示“Bad gateway”,而这个错误在 /var/log/nginx/error.log : <ip>, server: , request: "GET /server.php […]
我在这里需要一个小视angular,因为我有点困惑。 我的印象是,添加一个 <IfModule mod_php5.c> php_value upload_max_filesize 200M php_value post_max_size 800M </IfModule> 在我的域名虚拟主机文件将增加该域的upload_max_filesize ; 只有它不是。 我不希望在整个服务器上进行只针对一个域的更改。 所以我很好phpinfo()显示我一个2M的上传文件大小。 我是否也必须在php.ini进行更改,如果是这样,为什么呢? 我正在使用Fedora 22.我也加倍检查,如果mod_php5正在加载或不是 – 它是。 干杯!
我在这里看到了一堆关于这个问题的问题,但是没有一个答案帮助我。 我不断从nginx得到一个502错误,所以我看看access.log,看到当服务器试图连接到unix:/var/run/php5-fpm.sock时,我不断收到错误111 unix:/var/run/php5-fpm.sock 我已经重新启动php5-fpm,并确保套接字实际上在那里,但我一直得到这个错误。 你们知道为什么吗? 我的nginx.conf user www-data www-data; worker_processes auto; error_log /var/log/nginx_error.log; pid /run/nginx.pid; events { worker_connections 1024; } http { include /etc/nginx/mime.types; default_type application/octet-stream; sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; fastcgi_buffers 8 16k; fastcgi_buffer_size 32k; gzip on; gzip_disable "msie6"; access_log /var/logs/nginx/access.log; error_log /var/logs/nginx/access.log; server { listen 80 default_server; root […]
我build立一个Joomla网站使用docman进行文件pipe理/下载。 该网站build立在运行Nginx 1.4.2和PHP5(FPM)的Ubuntu 14.04服务器上。 我遇到的问题是文件下载不一致(在大小方面)。 例如,我从网站下载了一个PDF文件6次,结果如下: 72KB 75KB 146KB 177KB(完整文件) 72KB 177KB(完整文件) 对于这个testing,完整的文件正确下载了6次。 其他4次文件不完整。 我的nginx.conf看起来像这样 user www-data; worker_processes 1; error_log logs/error.log; worker_rlimit_nofile 8192; events { worker_connections 4096; } http { include /etc/nginx/conf/mime.types; include /etc/nginx/proxy.conf; include /etc/nginx/fastcgi.conf; index index.php app.php index.html index.htm; default_type application/octet-stream; log_format main '$remote_addr – $remote_user [$time_local] $status ' '"$request" $body_bytes_sent "$http_referer" ' […]
有没有人知道有一个很好的源代码 – 或者可以在这里回答 – 可以指导我有多lessFast-cgi进程和Nginx进程需要运行,以服务于一个温和的热门网站。 在75-100k pageview / day之间,相当密集的PHP填充页面,对于mysql中的重度查询,体面的caching很好。 我现在使用的是Apache mod_php,并且对于以cgi运行php是相对较新的,但是在PHP 5.3.0上使用APC + Memcache + Nginx + PHP-FPM(fast cgi)的早期设置非常快,在很轻的负载下有很多内存。 但是,我不确定如何在重负载下testing这个function,而不移动我最受欢迎的站点,但是我不想这样做,直到我知道我的5个cgi进程和5个nginx进程的当前设置是否足够。 谢谢
我得到臭名昭着的PHP时区错误: PHP警告:PHP启动:依靠系统的时区设置是不安全的。 您需要使用date.timezone设置或date_default_timezone_set()函数。 如果您使用这些方法中的任何一种,并且仍然收到此警告,则很可能是拼写错误的时区标识符。 我们select'欧洲/莫斯科'作为'MSK / 3.0 /没有DST',而不是0号线的未知 我确实使用了date.timezone,把它设置到了欧洲/柏林和欧洲/维尔纽斯,然后在php.ini中设置了“欧洲/维尔纽斯”,但似乎没有任何工作。 在Ubuntu Linux 9.04上使用PHP 5.3.0和Apache 2服务器 另外,我在PHP开始的时候遇到了这个错误,这可能是由一个插件引起的,也许是pecl …无论如何,我怎样才能正确设置时区? 提前致谢!
我使用用户“webroot”拥有专用服务器上的PHP脚本。 如果脚本是由我的系统上的apache2用户“www-data”拥有的话,编码和pipe理会更容易。 也感觉更简单和干净。 这个盒子上没有ftp,没有其他用户或站点。 为什么不拥有www-data所拥有的PHP脚本? 如果有什么反对的话,会发生什么事情呢?
这是ModWest共享主机的安装。 我在服务器上同时启用了PDO和PDO_sqlite,phpinfo()validation两者都在运行。 当我访问PDO本身,我很好,并得到一个有意义的错误。 <?php $dbh = new PDO(""); ?> 这给了我一个“无效的连接string”错误。 但是,一旦我开始与sqlite:的连接string,我得到一个完整的崩溃。 当我通过networking服务器运行时,我看到没有错误。 当我input一个不存在的文件名时,PHP确实创build了这个文件。 我尝试通过CLI运行构造函数,在那里我得到一个简单的错误: 分段故障 我没有看到有关这个错误的PHP 5.2.6更新日志中的任何东西。 任何人都有其他疑难解答步骤? 操作系统是Debian 5.0.4
有什么办法,我可以在同一台服务器上安装PHP 4和5,同时保持两个相同的“.php”扩展名,使得它只有一个特定的文件夹(+子文件夹)在php4下运行的服务器? 我有CentOS 5.5 x64与whm / cpanel,所以我可以安装EasyApache,这部分是不是一个问题。 我想要这个的理由是保持一个旧的脚本工作; 它用Zend编码并升级到PHP 5.3.x打破它,它将只能在5.2(或4.x),因为它需要重新编码,如果我要运行在5.3(不是一个选项)。 解码它也没有工作得很好,所以我认为php4 / 5的方法将是一个工作的解决scheme,如果我可以限制4到一个文件夹,而不必改变扩展名(显然脚本将失败与“.php4”,因为硬编码的path和文件名)。 我目前的php.conf,由SuPHP处理 # SuPHP configuration for PHP5 LoadModule suphp_module modules/mod_suphp.so suPHP_Engine on AddType application/x-httpd-php5 .php5 .php .php3 .php2 .phtml <Directory /> suPHP_AddHandler application/x-httpd-php5 </Directory> # SuPHP configuration for PHP4 AddType application/x-httpd-php4 .php4 <Directory /> suPHP_AddHandler application/x-httpd-php4 </Directory>