Apache-2.2

每個 Apache 虛擬主機的單獨 php.ini 文件?

  • January 2, 2017

是否可以有一個單獨的 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

編輯

對於那些感興趣的人,我在如何使用 NameVirtualHosts 在 LAMP 伺服器上設置每個站點的 php.ini 文件中找到了有關該主題的更多資訊?.

如果你使用 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(google it)。

如果您使用的是 cgi(或 fastcgi,或 fpm,它也是 fastcgi),您可以使用.user.ini文件.

只需.user.ini使用您的 php 選項在您的 webroot 目錄中放置一個文件,如下所示:

memory_limit=256M
upload_max_filesize=200M
post_max_size=200M

並且 php 將使用該選項擴展主 php.ini 文件。

引用自:https://serverfault.com/questions/144021