我正在尝试在 ubuntu 10.10 下的 PHP.ini 文件中设置一个变量。即 sendmail_path。
我的系统上有 4 个 php.ini 文件:
- php.ini 位于 /etc/php5/cli/
- /usr/share/php5/ 上的 php.ini-productions
- php.ini-productions.cli 位于 /usr/share/php5/
- php.ini-productions-dist 位于 /usr/share/php5/
我的 ubuntu 10.10 系统中没有其他 php.ini 文件。
我已经修改了所有这些文件,因为sendmail_path = /usr/sbin/ssmtp -t
我正在出于其他原因测试 ssmtp。
在 apache2 下启动phpinfo()
显示变量sendmail_path
仍然没有获取新值。
phpinfo()
重启apache2后复制:
Configuration File (php.ini) Path /etc/php5/apache2
Loaded Configuration File (none)
sendmail_path /usr/sbin/sendmail -t -i /usr/sbin/sendmail -t -i
终端窗口的更多输出:
$ php --ini
Configuration File (php.ini) Path: /etc/php5/cli
Loaded Configuration File: /etc/php5/cli/php.ini
Scan for additional .ini files in: /etc/php5/cli/conf.d
Additional .ini files parsed: /etc/php5/cli/conf.d/gd.ini,
/etc/php5/cli/conf.d/mcrypt.ini,
/etc/php5/cli/conf.d/mysql.ini,
/etc/php5/cli/conf.d/mysqli.ini,
/etc/php5/cli/conf.d/pdo.ini,
/etc/php5/cli/conf.d/pdo_mysql.ini
$ php -v
PHP 5.3.3-1ubuntu9.10 with Suhosin-Patch (cli) (built: Feb 11 2012 06:21:15)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
我没有办法解决这个问题,并且这个周末曾尝试用谷歌搜索这种行为,但没有成功。
如果您能解决这个问题,我想我不是唯一一个遇到这个“问题”的人。
答案1
这次是我自己回答的。
经过更多谷歌搜索并访问以下页面后,找到了该问题的解决方案:
http://www.howtoforge.com/how-to-specify-a-custom-php.ini-for-a-website-apache2-with-mod_php
确实让我很开心。
使用以下内容更改了我的空的 httpd.conf 文件:
php_admin_value sendmail_path "/usr/sbin/ssmtp -t"
重新启动 apache2。没有错误,并且 phpinfo() 在上述变量处显示以下内容:
sendmail_path /usr/sbin/ssmtp -t /usr/sbin/sendmail -t -i
我想我现在可以使用 ssmtp 进行更多测试了。
更多详情请访问http://www.php.net