首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在httpd.conf中设置PHP变量?

在httpd.conf中设置PHP变量?
EN

Stack Overflow用户
提问于 2008-09-28 17:56:34
回答 5查看 44.1K关注 0票数 25

我希望在每个vhost的基础上自动更改我的数据库连接设置,这样我就不必在PHP代码从一个登台移动到另一个活动时编辑任何PHP代码,而不必访问不同的数据库。这是在一台专用服务器上。

所以我想知道,我是否可以在httpd.conf中设置一个PHP变量或常量作为vhost定义的一部分,然后站点可以使用它来自动指向测试数据库?

代码语言:javascript
复制
$database = 'live';
if (some staging environment variable is true) {
    $database = 'testing'; // and not live
}

如果这是不可能的,我想在这种情况下,我可以安全地检查我正在运行的主机名,但我想要一些不那么脆弱的东西

希望这是有意义的

非常感谢

伊恩

EN

回答 5

Stack Overflow用户

发布于 2008-09-28 18:08:05

Yep...you可以做到这一点:

代码语言:javascript
复制
SetEnv DATABASE_NAME testing

然后在PHP中:

代码语言:javascript
复制
$database = $_SERVER["DATABASE_NAME"];

代码语言:javascript
复制
$database = getenv("DATABASE_NAME");
票数 81
EN

Stack Overflow用户

发布于 2008-09-28 18:08:42

您可以设置环境变量并使用PHP检索它。

在httpd.conf中:

代码语言:javascript
复制
SetEnv database testing

在你的PHP中:

代码语言:javascript
复制
if (getenv('database') == 'testing') {

代码语言:javascript
复制
if ($_SERVER['database'] == 'testing') {
票数 17
EN

Stack Overflow用户

发布于 2008-09-28 19:56:05

我不会设置环境变量,因为这在默认脚本输出中也是可见的,比如PhpInfo();

只需在.htaccess中的htdocs文件夹上方使用一个php_value,就可以安全地完成操作:)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/146354

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档