如何从我的php应用程序覆盖php.ini和httpd.conf中的设置

时间:2010-09-07 19:25:00

标签: php apache settings

我没有访问php.ini和httpd.conf文件的权限。是否有任何程序可以从我的php应用程序覆盖(或添加一些)php.ini和httpd.conf文件的设置?

3 个答案:

答案 0 :(得分:3)

对于Apache配置:这可以(对于某些设置)使用.htaccess文件完成:

  

.htaccess个文件(或“分布式配置文件”)提供了一种基于每个目录进行配置更改的方法。包含一个或多个配置指令的文件放在特定的文档目录中,并且指令适用于该目录及其所有子目录。

您可能无法使用.htaccess文件更改某些设置;您可以使用的指令使用AllowOverride指令在主Apache配置中指定。

对于PHP设置:可以使用ini_set函数完成此操作:

  

设置给定配置选项的值。配置选项将在脚本执行期间保留此新值,并将在脚本结束时恢复。

This appendix显示可以从脚本更改哪些设置。

答案 1 :(得分:0)

您可以使用ini_set()进行某些设置,也可以通过.htaccess修改设置 http://www.php.net/manual/en/ini.list.php

使用这些方法的ini设置的可变性因变量而异(请参阅“可更改”列)。 This page解释了每个PHP_INI_*的含义。

对于httpd.conf中的设置(例如:与Apache本身而不是PHP有关),您需要使用.htaccess个文件。但当然,您的服务器AllowOverride必须允许您使用它们。有关此信息,请与您的托管服务提供商联系。

答案 2 :(得分:0)

对于apache,请使用.htaccess,这将授予您对httpd.conf给您的大部分内容的控制权。

对于PHP,请查看此处:PHP: How to change configuration settings,其中一个方法是将设置放在.htaccess文件中(当服务器中存在某些php模块时)。