是否有可能有一个单独的php.ini文件覆盖每个虚拟主机的默认php.ini文件? 我正在运行Apache / 2.2.14,PHP 5.3.2-1。
例如,我有几个虚拟主机指向我的/var/www/目录中的域:
/var/www/website1.com /var/www/website2.com
我想要的是能够在每个目录中放置一个自定义的php.ini文件,只会覆盖该虚拟主机的默认值,但如果未指定该值,请保留原始默认值:
/var/www/website1.com/htdocs/ /var/www/website1.com/php.ini
编辑
对于那些感兴趣的,我发现更多的信息关于如何设置每个站点php.ini文件在LAMP服务器上使用NameVirtualHosts的主题? 。
如果你使用的是mod_php,你可以在httpd.conf中覆盖你想要的值。 有这些模块指令:
php_value - PHP Value Modifier php_flag - PHP Flag Modifier php_admin_value - PHP Value Modifier (Admin) php_admin_flag - PHP Flag Modifier (Admin)
如果没有,最好的办法是PHP FPM(谷歌它)。
如果您使用的是cgi(或fastcgi,或fpm,也就是fastcgi),则可以使用.user.ini文件 。
只需将一个.user.ini文件放在你的webroot目录下,如下所示:
memory_limit=256M upload_max_filesize=200M post_max_size=200M
和PHP将扩展主要的php.ini文件与该选项。
在VirtualHost标签内添加PHPINIDir,并将其指向您的php.ini文件,该文件将被vhost使用。
<VirtualHost *:80> [....] PHPINIDir /var/www/web1 [....] </VirtualHost>
从http://www.howtoforge.com/how-to-specify-a-custom-php.ini-for-a-website-apache2-with-mod_php抓取
编辑14/04/2010 12:30 pm EST:**没关系,这改变了所有虚拟主机的“加载configuration文件”。 **