我的PHP代码超时时出现以下错误:
此请求需要很长时间才能处理,服务器会超时.如果不应该超时,请联系本网站的管理员以增加"连接超时"
我不确定为什么会这样.这是我的代码:
if(!in_array($name,$names)){
mysql_query("INSERT INTO `tbl` (`name`, `time`, `link`) VALUES ( '$name', '$time', '$link');");
} else {
mysql_query("UPDATE `tbl` SET `time` = '$time', `link` = '$link' WHERE `pishkhan`.`name` = $name;");
echo $name.'<br/>';
}
file_put_contents('test/albums/news/'.$name.".jpg", fopen($link, 'r'));
Run Code Online (Sandbox Code Playgroud)
正如我在此处的回答中所说,这个特定的错误消息是由LiteSpeed Web服务器生成的(Apache的更快替代品).它有一个特殊功能,它可以取消长时间运行的脚本(甚至是那些使用过的脚本set_time_limit()).要禁用此功能,您需要将以下内容放在.htaccess您网站根目录中的文件中.
RewriteEngine On
RewriteRule .* - [E=noabort:1]
RewriteRule .* - [E=noconntimeout:1]
Run Code Online (Sandbox Code Playgroud)
您可以设置set_time_limit比默认 30 秒更大的值。但从你的代码中,我不明白为什么它必须超时。也许有些配置问题?比如mysql连接时间太长?
另外,不要使用已弃用的mysql_*函数。使用mysqli_*或PDO。