fastcgi日志word范文模板 13页.docx
- 文档编号:5382990
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:10
- 大小:21.79KB
fastcgi日志word范文模板 13页.docx
《fastcgi日志word范文模板 13页.docx》由会员分享,可在线阅读,更多相关《fastcgi日志word范文模板 13页.docx(10页珍藏版)》请在冰豆网上搜索。
fastcgi日志word范文模板13页
本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!
==本文为word格式,下载后可方便编辑和修改!
==
fastcgi日志
篇一:
Nginx常见错误与解决方法
上海纽斯达科技
Nginx常见错误与解决方法
上海纽斯达科技有限公司
201X-10-25
文档状态
目的:
在Nginx服务器出现故障时,能快速定位并解决相关错误。
保密:
本文档仅供内部使用,请勿外传
概述:
Nginx常见错误与问题之解决方法技术指南。
安装环境:
系统环境:
redhatenterprise6.564bit
1、Nginx常见启动错误
有的时候初次安装nginx的时候会报这样的错误
sbin/nginx-cconf/nginx.conf
报错内容:
sbin/nginx:
errorwhileloadingsharedlibraries:
libpcre.so.1:
cannotopensharedobjectfile:
Nosuchfileordirectory
启动时如果报异常errorwhileloadingsharedlibraries:
libpcre.so.1:
cannotopen
sharedobjectfile:
Nosuchfileordirectory这说明我们的环境还不是和启动需要
小小的配置一下
解决方法(直接运行):
32位系统[root@severlib]#ln-s/usr/local/lib/libpcre.so.1/lib
64位系统[root@severlib]#ln-s/usr/local/lib/libpcre.so.1/lib64
然后执行ps-ef|grepnginx查看nginx进程确认是否真的已经启动了,在进程列表里会
有最起码两个,worker(nginx工作进程)和master(nginx主进程)
root43491002:
24?
00:
00:
00nginx:
masterprocesssbin/nginx-c
conf/nginx.conf
nginx43504349002:
24?
00:
00:
00nginx:
workerprocess
root435628335002:
30pts/100:
00:
00grepnginx
NGINX就OK了
2、400badrequest错误的原因和解决办法
配置nginx.conf相关设置如下.
client_header_buffer_size16k;
large_client_header_buffers464k;
根据具体情况调整,一般适当调整值就可以。
3、Nginx502BadGateway错误
在php.ini和php-fpm.conf中分别有这样两个配置项:
max_execution_time和
request_terminate_timeout。
这两项都是用来配置一个PHP脚本的最大执行时间的。
当超过这个时间时,PHP-FPM不只会终止脚本的执行,
还会终止执行脚本的Worker进程。
所以Nginx会发现与自己通信的连接断掉了,就会返回给客户端502错误。
以PHP-FPM的request_terminate_timeout=30秒时为例,报502BadGateway错误的具体信息如下:
1)Nginx错误访问日志:
201X/09/1901:
09:
00[error]27600#0:
*78887recv()failed(104:
Connectionresetbypeer)whilereadingresponseheaderfromupstream,
client:
192.168.1.101,server:
request:
"POST/index.php
HTTP/1.1",upstream:
"fastcgi:
//unix:
/dev/shm/php-fcgi.sock:
",
host:
"",referrer:
"/index.php"
2)PHP-FPM报错日志:
WARNING:
child25708exitedonsignal15(SIGTERM)after21008.883410secondsfromstart
所以只需将这两项的值调大一些就可以让PHP脚本不会因为执行时间长而被终止了。
request_terminate_timeout可以覆盖max_execution_time,
所以如果不想改全局的php.ini,那只改PHP-FPM的配置就可以了。
此外要注意的是Nginx的upstream模块中的max_fail和fail_timeout两项。
有时Nginx与上游服务器(如Tomcat、FastCGI)的通信只是偶然断掉了,
但max_fail如果设置的比较小的话,那么在接下来的fail_timeout时间内,Nginx都会认为上游服务器挂掉了,都会返回502错误。
所以可以将max_fail调大一些,将fail_timeout调小一些。
4、Nginx出现的413RequestEntityTooLarge错误
这个错误一般在上传文件的时候会出现,
编辑Nginx主配置文件Nginx.conf,找到http{}段,添加
client_max_body_size10m;//设置多大根据自己的需求作调整.
如果运行php的话这个大小client_max_body_size要和php.ini中的如下值的最大值一致或
者稍大,这样就不会因为提交数据大小不一致出现的错误。
post_max_size=10M
upload_max_filesize=2M
5、解决504GatewayTime-out(nginx)
遇到这个问题是在升级discuz论坛的时候遇到的一般看来,这种情况可能是由于nginx默认的
fastcgi进程响应的缓冲区太小造成的,这将导致fastcgi进程被挂起,如果你的fastcgi服务
对这个挂起处理的不好,那么最后就极有可能导致504GatewayTime-out,现在的网站,尤其某
些论坛有大量的回复和很多内容的,一个页面甚至有几百K。
默认的fastcgi进程响应的缓冲区
是8K,我们可以设置大点在nginx.conf里,加入:
fastcgi_buffers8128k这表示设置
fastcgi缓冲区为8×128
当然如果您在进行某一项即时的操作,可能需要nginx的超时参数调大点,例如设置成90秒:
send_timeout90;只是调整了这两个参数,结果就是没有再显示那个超时,效果不错Nginx中关于与上游服务器通信超时时间的配置factcgi_connect/read/send_timeout。
以Nginx超时时间为90秒,PHP-FPM超时时间为300秒为例,报504GatewayTimeout错误时的Nginx错误访问日志如下:
201X/09/1900:
55:
51[error]27600#0:
*78877upstreamtimedout(110:
Connectiontimedout)whilereadingresponseheaderfromupstream,
client:
192.168.1.101,server:
request:
"POST/index.phpHTTP/1.1",upstream:
"fastcgi:
//unix:
/dev/shm/php-fcgi.sock:
",
host:
"",referrer:
"/index.php"
调高这三项的值(主要是read和send两项,默认不配置的话Nginx会将超时时间设为60秒)之后,504错误也解决了。
而且这三项配置可以配置在http、server级别,也可以配置在location级别。
担心影响其他应用的话,就配置在自己应用的location中吧。
要注意的是factcgi_connect/read/send_timeout是对FastCGI生效的,而
proxy_connect/read/send_timeout是对proxy_pass生效的。
配置举例:
location~\.php${
root/home/cdai/;
includefastcgi_params;
篇二:
FastCGI进程管理器(FPM)安装与配置
FastCGI进程管理器(FPM)安装与配置
‘FPM(FastCGI进程管理器)用于替换PHPFastCGI的大部分附加功能,对于高负载网站是非常有用的。
它的功能包括:
?
?
?
?
?
?
?
?
?
?
支持平滑停止/启动的高级进程管理功能;可以工作于不同的uid/gid/chroot环境下,并监听不同的端口和使用不同的php.ini配置文件(可取代safe_mode的设置);stdout和stderr日志记录;在发生意外情况的时候能够重新启动并缓存被破坏的opcode;文件上传优化支持;"慢日志"-记录脚本(不仅记录文件名,还记录PHPbacktrace信息,可以使用ptrace或者类似工具读取和分析远程进程的运行数据)运行所导致的异常缓慢;fastcgi_finish_request()-特殊功能:
用于在请求完成和刷新数据后,继续在后台执行耗时的工作(录入视频转换、统计处理等);动态/静态子进程产生;基本SAPI运行状态信息(类似Apache的mod_status);基于php.ini的配置文件.
安装
需求
FPM使用libevent来管理链接和进程信号.至少需要安装libevent-1.4.11或者以上版本.
从源代码编译
编译PHP时需要--enable-fpm配置选项来激活FPM支持
以下为FPM编译的具体配置参数(全部为可选参数):
?
?
?
--with-libevent-dir-指定libevent的安装路径--with-fpm-user-设置FPM运行的用户身份(默认-nobody).--with-fpm-group-设置FPM运行时的用户组(默认-nobody).文档原创稿件由站长提供,下载使用请保留署名。
运行时配置
FPM配置文件为php-fpm.conf,其语法类似php.ini。
php-fpm.conf全局配置段
pidstring
PID文件的位置.默认为空.
error_logstring
错误日志的位置.默认:
安装路径#INSTALL_PREFIX#/log/php-fpm.log.log_levelstring
错误级别.可用级别为:
alert(必须立即处理),error(错误情况),warning(警告情况),notice(一般重要信息),debug(调试信息).默认:
notice.
emergency_restart_thresholdint
如果子进程在emergency_restart_interval设定的时间内收到该参数设定次数的SIGSEGV或者SIGBUS退出信息号,则FPM会重新启动。
0表示'关闭该功能'.默认值:
0(关闭).
emergency_restart_intervalmixed
emergency_restart_interval用于设定平滑重启的间隔时间.这么做有助于解决加速器中共享内存的使用问题.可用单位:
s(秒),m(分),h(小时),或者d(天).默认单位:
s(秒).默认值:
0(关闭).
process_control_timeoutmixed
设置子进程接受主进程复用信号的超时时间.可用单位:
s(秒),m(分),h(小时),或者d(天)默认单位:
s(秒).默认值:
0.
daemonizeboolean
文档原创稿件由站长提供,下载使用请保留署名。
设置FPM在后台运行.设置'no'将FPM保持在前台运行用于调试.默认值:
yes.
运行配置区段
在FPM中,可以使用不同的设置来运行多个进程池。
这些设置可以针对每个进程池单独设置。
listenstring
设置接受FastCGI请求的地址.可用格式为:
'ip:
port','port',
'/path/to/unix/socket'.每个进程池都需要设置.
listen.backlogint
设置listen
(2)的半连接队列长度.'-1'表示无限制.默认值:
-1.listen.allowed_clientsstring
设置允许连接到FastCGI的服务器IPV4地址.等同于PHPFastCGI
(5.2.2+)中的FCGI_WEB_SERVER_ADDRS环境变量.仅对TCP监听起作用.每个地址是用逗号分隔.如果没有设置或者为空,则允许任何服务器请求连接.默认值:
any.
listen.ownerstring
如果使用,表示设置Unix套接字的权限.在Linux中,读写权限必须设置,以便用于WEB服务器连接.在很多BSD派生的系统中可以忽略权限允许自由连接.默认值:
运行所使用的用户合租,权限为0666.
listen.groupstring
参见listen.owner.
listen.modestring
参见listen.owner.
userstring
FPM进程运行的Unix用户.必须设置.
groupstring
文档原创稿件由站长提供,下载使用请保留署名。
FPM进程运行的Unix用户组.如果没有设置,则默认用户的组被使用.pmstring
设置进程管理器如何管理子进程.可用值:
static,dynamic.必须设置.static-子进程的数量是固定的(pm.max_children).
dynamic-子进程的数量在下面配置的基础上动态设置:
pm.max_children,pm.start_servers,
pm.min_spare_servers,pm.max_spare_servers.
pm.max_childrenint
子进程的数量,pm设置为static时表示创建的,pm设置为dynamic时表示最大可创建的.必须设置.
该选项设置可以同时提供服务的请求数限制.类似Apache的
mpm_prefork中MaxClients的设置和普通PHPFastCGI中的PHP_FCGI_CHILDREN环境变量.
pm.start_serversin
设置启动时创建的子进程数目.仅在pm设置为dynamic时使用.默认值:
min_spare_servers+(max_spare_servers-min_spare_servers)/2.
pm.min_spare_serversint
设置空闲服务进程的最低数目.仅在pm设置为dynamic时使用.必须设置.
pm.max_spare_serversint
设置空闲服务进程的最大数目.仅在pm设置为dynamic时使用.必须设置.
pm.max_requestsint
设置每个子进程重生之前服务的请求数.对于可能存在内存泄漏的第三方模块来说是非常有用的.如果设置为'0'则一直接受请求.等同于PHP_FCGI_MAX_REQUESTS环境变量.默认值:
0.
pm.status_pathstring
文档原创稿件由站长提供,下载使用请保留署名。
FPM状态页面的网址.如果没有设置,则无法访问状态页面.默认值:
none.
ping.pathstring
FPM监控页面的ping网址.如果没有设置,则无法访问ping页面.该页面用于外部检测FPM是否存活并且可以响应请求.请注意必须以斜线开头(/).
ping.responsestring
用于定义ping请求的返回相应.返回为HTTP200的text/plain格式文本.默认值:
pong.
request_terminate_timeoutmixed
设置单个请求的超时中止时间.该选项可能会对php.ini设置中的
'max_execution_time'因为某些特殊原因没有中止运行的脚本有用.设置为'0'表示'Off'.Availableunits:
s(econds)(default),m(inutes),h(ours),ord(ays).Defaultvalue:
0.
request_slowlog_timeoutmixed
当一个请求该设置的超时时间后,就会将对应的PHP调用堆栈信息完整写入到慢日志中.设置为'0'表示'Off'.可用单位:
s(秒)(默认),m(分),h(小时),或者d(天).默认值:
0.
slowlogstring
慢请求的记录日志.默认值:
#INSTALL_PREFIX#/log/php-fpm.log.slow.
rlimit_filesint
设置文件打开描述符的rlimit限制.默认值:
系统定义值.rlimit_coreint
设置核心rlimit最大限制值.可用值:
'unlimited'、0或者正整数.默认值:
系统定义值.
chrootstring
启动时的Chroot目录.所定义的目录需要是绝对路径.如果没有设置,则chroot不被使用.
文档原创稿件由站长提供,下载使用请保留署名。
篇三:
IIS以FastCGI模式运行PHP
由于PHP5.3的改进,原有的IIS通过isapi方式解析PHP脚本已经不被支持,PHP从5.3.0以后的版本开始使用微软的fastcgi模式,这是一个更先进的方式,运行速度更快,更稳定。
本文介绍在IIS上以FastCGI模式运行PHP。
。
第一步:
下载安装的文件
1.FastCGI版本fcgisetup_1.5_x86_rtw.msi地址:
2.
下面开始安装:
?
PHP版本php-5.3.8-nts-Win32-VC9-x86.zip地址:
为IIS安装FastCGI扩展。
首先确定系统已经安装好了IIS。
然后双击
fcgisetup_1.5_x86_rtw.msi安装,如果C盘是你的Windows系统安装盘,它会把fcgi特定的文件复制到C:
\Windows\system32\inetsrv文件夹下,注册并且使fcgi的web服务生效,这时在IIS的“Web服务扩展”里多了FastCGIHandler。
?
下载安装IIS下的PHP
下载地址/src/jawstats-0.7beta.tar.gz
mkdir/home/jawstats/
tar-zxfjawstats-0.7beta.tar.gz-C/home/jawstats/
cd/home/jawstats/
cpconfig.dist.phpconfig.php
2.2.修改配置文件
官方配置说明见:
/documentation
jawstats是支持多站点的,每个$aConfig对应一个站点,并可以自由切换。
php
//coreconfigparameters
$sDefaultLanguage="zh-cn";//设置默认语言
$sConfigDefaultView="thismonth.all";
$bConfigChangeSites=false;//是否可以更换站点
$bConfigUpdateSites=false;//是否可以更新统计数据
$sUpdateSiteFilename="xml_update.php";
//individualsiteconfiguration
$aConfig["buy_saearch"]=array(//网站域名(注意不能乱填,要与前面的对应)"statspath"=>"/home/awstats/",//awstats统计数据目录
"updatepath"=>"/usr/local/awstats/wwwroot/cgi-bin/awstats.pl/",//用于更新统计数据
"siteurl"=>"topch)
forxin${name[@]};do
mkdir-p/home/NginxReport/awstats/$x/$Day
/usr/local/awstats/tools/awstats_buildstaticpages.pl-update-config=$x-lang=cn\
-dir=/home/NginxReport/awstats/$x/$Day/
\-awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
mv/home/NginxReport/awstats/$x/$Day/awstats.$x.html/home/NginxReport/awstats/$x/$Day/index.html
sleep5s
done
日志信息统计更新
1写脚本,放到cron任务中执行,在日志切割之前的时间生成统计信息○
即上边写的awstats.sh脚本,生成静态页面之前要先更新awstats的数据库文件。
2手工更新○
在访问页面的时候页面左上角有”updatesite”按钮,点击之后输入更新密码,可以把统计信息更新到当前的时间的。
访问:
awstats页面和jawstats页面都用了zeus的加密
账号:
Nreprot
密码:
123456
最后大功告成,输入https:
//youdomain:
port/便可以访问了。
jawstats空白页面解决:
使用jawstats来进行分析网站数据,分析到第三天的数据时就会出现空白页的状况。
发现jawstats根目录下面的index.php里面还有个设置:
error_reporting(0)====》error_reporting(E_ALL)
进行上述修改后,再次打开jawstats显示空白页的站,发现提示如下:
Fatalerror:
Allowedmemorysizeof134217728bytesexhausted(triedtoallocate96779834bytes)in/data/web/stats/clsAWStats.phponline54可以看出是为php分配的内存不够产生的问题,更改php.ini后如下配置:
memory_limit=128M====》memory_limit=256M
然后重启zeus
jawsta
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- fastcgi日志word范文模板 13页 fastcgi 日志 word 范文 模板 13