>  기사  >  백엔드 개발  >  利用PHP内建函数和htaccess修改php.ini参数

利用PHP内建函数和htaccess修改php.ini参数

WBOY
WBOY원래의
2016-06-20 13:05:281274검색

前几天写一个程序的时候,有一个脚本的执行时间比较长,100s+,但是php.ini默认的脚本超时时间是30s,所以自然而然的中断了,加上set_limit_time(0),发现函数被禁用了,汗。

到论坛问客服,客服说因为是共享服务器,为了避免某一个虚拟机内的脚本有死循环,使CPU飙升,就关闭了这个函数,听到这个结果,我异常蛋疼。

在蛋疼了一天以后,有个会员给提供了一个方法,利用htacces修改脚本超时时间等php.ini参数。试了一下,嘿,还真可以,又忽然想到了ini_set()这个函数,试了一下,依然可以,哇嘎嘎,我可以邪恶了~

实例:

# 先以htaccess为例
# 示例:
# php_value 参数名 参数值
# 实例:
php_value max_execution_time 600
# 这样,脚本超时时间就改为了600(十分钟)了

这是.htaccess的写法,不过貌似这样写之后,rewrite都失效了?反正我同目录下的dz伪静态没用,一直404,汗,方便没好货啊,不过如果禁用了ini_get和ini_set,这个方法还是可取的。

下面看php的:

<?php echo "修改前:".ini_get("max_execution_time");
if(ini_set("max_execution_time",600))
echo "修改ing...";
else
exit("ini_set()函数被禁用");
sleep(3);
echo "修改后:".ini_get("max_execution_time");
?>


刚才忘了,最后加一句:htaccess那个只能用于 PHP_INI_ALL 或 PHP_INI_PERDIR 类型的指令,其它的不行。


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.