主机是否可以锁定php ini设置?

时间:2013-08-29 23:15:08

标签: php web-hosting php-ini

我正在开发一个需要使用会话的网站。但是,会话生命周期的默认值是1440秒或24分钟。我尝试使用ini_set()更改此设置,确保将ini_set()放在session_start()之前,然后使用ini_get()进行检查。 ini_get()返回我设置的值,但会话似乎仍然遵循默认规则集。

主机是否可以锁定编辑ini设置?

2 个答案:

答案 0 :(得分:0)

简短回答:可能。

可能是他们已经通过全局php.ini中的ini_set指令禁用disable_functions,但这并不能解释您所看到的行为;文档不清楚,但是如果你调用了一个禁用函数,我希望它会抛出错误,也不会解释为什么ini_get返回你之前设置的内容。它们也完全有可能运行自己修补的PHP版本来改变这种行为。并非闻所未闻,但不太可能。

要尝试的事情:

  • 使用session_set_cookie_params进行设置(需要在session_start之前)
  • 仔细检查您是否设置了正确的参数(session.cookie_lifetime),并且您的ini_set肯定位于session_start之前,或者您没有在其他地方设置另一个session_start

答案 1 :(得分:-1)

这是真的。

php代理有3个范围。

  

1个系统

     

这个会影响所有应用程序。它是global.ini文件。他们能   也禁用覆盖。

     

2 Perdir

     

这是你的php.ini文件。它只影响你的目录。这可以   您禁用脚本范围的覆盖并在中覆盖   允许的系统范围

     

3个剧本

     

这是ini_set范围。它可以覆盖perdir&系统   允许的范围

主机是否可以锁定编辑ini设置?

是的,他们可以在系统范围内禁用覆盖。