为什么切换用户时我的`default_socket`值会发生变化?

时间:2015-11-12 01:03:31

标签: php macos

我正在运行MacOSX 10.10.5。我正在使用自制的MySQL安装和php的默认安装。

当我以自己的用户身份运行php -i时,我得到mysql*.default_socket的以下输出:

mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
mysqli.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
pdo_mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
default_socket_timeout => 60 => 60

这是不正确的;我的mysql设置会在/tmp/mysql.sock创建套接字。但当我切换到root用户(通过sudo su)时,我得到php -i的输出:

mysql.default_socket => /tmp/mysql.sock => /tmp/mysql.sock
mysqli.default_socket => /tmp/mysql.sock => /tmp/mysql.sock
pdo_mysql.default_socket => /var/mysql/mysql.sock => /var/mysql/mysql.sock
default_socket_timeout => 60 => 60

我的/etc/php.ini设置了这些值:

default_socket_timeout = 60
pdo_mysql.default_socket=
mysql.default_socket = /tmp/mysql.sock
mysqli.default_socket = /tmp/mysql.sock

显然,当我root时,php正在从/etc/php.ini中选择值。否则,事实并非如此。我已使用php --ini确认了这一点。 如何让PHP始终从/etc/php.ini获取配置值?

0 个答案:

没有答案