我需要在我的 Mac 上设置一个环境变量,以便在运行 Apache 并且 PHP/PDO 加载 pdo_informix 驱动程序时,它知道 Informix 主目录的位置。我真的已经厌倦了一切!
在/usr/sbin/envvars我添加了:export INFORMIXDIR=/Applications/IBM/informix
在/System/Library/LaunchDaemons/org.apache.httpd.plist我插入了:
<key>EnvironmentVariables</key>
<dict>
<key>INFORMIXDIR</key>
<string>/Applications/IBM/informix</string>
</dict>
我试过:launchctl setenv INFORMIXDIR /Applications/IBM/informix
一切都无济于事。
我在apache全局配置中添加了PassEnv行。但是当我重新启动服务时,我看到:
root 589 ->apachectl restart
[Mon Aug 05 13:35:16 2013] [warn] PassEnv variable INFORMIXDIR was undefined
当我运行我的测试 .php 页面时,驱动程序加载但抱怨它无法确定数据库区域设置。错误信息:
[Mon Aug 05 12:56:23 2013] [error] [client ::1] PHP Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE=HY000, SQLDriverConnect: -23101 [Informix][Informix ODBC Driver][Informix]Unspecified System Error = -23101.' ...
谁能告诉我我错过了什么?