如何设置环境变量以保存 PHP 的 DSN?
How can I setup an environment variable to hold a DSN for PHP?
我正在尝试为每个 this SO Post.
设置一个永久 "environment" 变量
我把这个变量放在我的 .bash_profile 中,我可以使用它从命令行访问它。
echo $VAR
但是,这是 PHP 需要的 DSN(数据库凭证)(Heroku 做的也是一样),我需要使用
访问它
getenv()
或类似的。
如果我从命令行 运行 env
我看不到它列出。
看来有不同类型的环境变量,我用错了。
我应该如何正确执行此操作?
您的网络服务器没有 运行 您的 shell 所以它没有.bash_profile。有多种技巧可以将环境变量添加到 Apache 中,但它们都依赖于对您的网络服务器的管理访问权限,而您无法在 low-end godaddy 托管上获得它。
如果您要解释为什么要尝试将环境变量放入 Apache、您拥有什么类型的主机以及您对服务器有什么访问权限,我们可能会提供更好的建议。有些模块公开了对 Apache 操作环境变量的访问权限(例如 mod_env),但这些可能不是 available/appropriate。也可以从 .htaccess 文件中获取数据(和代码)到 PHP,但同样无法确定这是否满足您的要求。
我正在尝试为每个 this SO Post.
设置一个永久 "environment" 变量我把这个变量放在我的 .bash_profile 中,我可以使用它从命令行访问它。
echo $VAR
但是,这是 PHP 需要的 DSN(数据库凭证)(Heroku 做的也是一样),我需要使用
访问它getenv()
或类似的。
如果我从命令行 运行 env
我看不到它列出。
看来有不同类型的环境变量,我用错了。
我应该如何正确执行此操作?
您的网络服务器没有 运行 您的 shell 所以它没有.bash_profile。有多种技巧可以将环境变量添加到 Apache 中,但它们都依赖于对您的网络服务器的管理访问权限,而您无法在 low-end godaddy 托管上获得它。
如果您要解释为什么要尝试将环境变量放入 Apache、您拥有什么类型的主机以及您对服务器有什么访问权限,我们可能会提供更好的建议。有些模块公开了对 Apache 操作环境变量的访问权限(例如 mod_env),但这些可能不是 available/appropriate。也可以从 .htaccess 文件中获取数据(和代码)到 PHP,但同样无法确定这是否满足您的要求。