php怎么设置报错,502错误什么原因?
网站出现502错误的原因分析:
将请求提交给网关如php-fpm执行,但是由于某些原因没有执行完毕导致php-fpm进程终止执行。那么出现问题的地方便与网关服务如php-fpm的配置有关。
max_children最大子进程数,在高并发请求下,达到php-fpm最大响应数,后续的请求就会出现502错误的。可以通过netstat命令来查看当前连接数。
request_terminate_timeout设置单个请求的超时终止时间。还应该注意到php.ini中的max_execution_time参数。当请求终止时,也会出现502错误的。
当积累了大量的php请求,此时重启php-fpm释放资源,但没有几分钟的时间,又再次出现502错误,为什么呢?此时我们还应考虑是否与数据库有关,查看下数据库进程是否有大量的locked进程,数据库死锁导致超时,前端终止了继续请求,但是SQL语句还在等待释放锁,这时就要重启数据库服务了或kill掉死锁SQL进程了。
如何解决504?
1、有可能是设置的缓冲区不够大,默认的是8k
在nginx.conf 配置文件里加入 fastcgi_buffers 8 128k 也就是把缓冲区大小改为 8 * 128k
2、也可以增加超时参数
send_timeout 60 ,一般加大到60秒就差不多了
3、减少FastCGI的请求次,也是在nginx.conf 配置文件里
astcgi_connect_timeout 300s; fastcgi_send_timeout 300s; fastcgi_read_timeout 300s; fastcgi_buffer_size 128k; fastcgi_buffers 8 128k;#8 128 fastcgi_busy_buffers_size 256k; fastcgi_temp_file_write_size 256k; fastcgi_intercept_errors on; 这里最主要的设置是前三条,即 fastcgi_connect_timeout 300s; fastcgi_send_timeout 300s; fastcgi_read_timeout 300s;
这的配置信息,主要是规定了PHP-CGI的连接、发送和读取的时间,300秒足够用了,我更改好后,我以前的站点很少出现504 Gateway Time-out这个错误。
php出现500错误?
出现500错误,无非有几种情况:
1.服务器配置不行;
2.服务器不支持PHP; 3,你的代码有语法错误,通常少了括号或多了括号等,仔细查看你的PHP代码;
数据库出错是什么意思?
数据库连接出错,一般是以下原因之一造成的:
1、数据库连接信息错误
熟悉WordPress的朋友应该知道,在WordPress根目录下有一个名为 wp-config.php 的文件,里面包含了数据库连接信息:
所以,当我们遇到“建立数据库连接时出错”时,我们应该首先检查这个wp-config.php文件的数据库连接信息是否正确,尤其是当我们更换主机或数据库的时候。如果不正确,就根据实际情况去修正。
如果你不清楚新主机的数据库连接信息,建议联系主机商咨询。
2、MySQL数据库停掉了
由于某些原因,可能会导致MySQL数据库进程停掉,比如内存不够、PHP查询语句错误等,这个时候, 如果已经确认wp-config.php的数据库连接信息是正确的,那我们就应该去检查下MySQL是否停掉了。如果是的,那就启动看下是否可以恢复。
导致MySQL停掉的原因可能很多,也比较复杂,在此我们不进行讨论。如果MySQL经常无故停掉,建议找专业的运维人员去帮忙处理。
3、数据库表损坏
如果已经确认wp-config.php的数据库连接信息是正确,并且MySQl数据库运行正常,那我们就应该去检查数据库是否有数据表损坏了。
由于插件、主题的不断变化,或者在WordPress网站中安装了安装编码错误或不良的插件,或者文章数据量很大,这些都有可能导致数据库损坏。
php报错问题Parse?
因为没有看到完整的代码,只能大致猜测一下:
出现:syntax error, unexpected T_STRING的错误提示,其原因一般来说,大多是 php 代码的开始与结束标志符没有一一对应,比如你上面定义的函数:
function _construct($host,$name,$pwd,$dBase){
可能没有完成正确的函数定义。
顺便提一句:
如果你编写的是一个类的构造器,那么,_construct 应该是 __construct。
在php语言里,类的构造器是魔术方法,前面要用__(两个下划短线)。