确定脚本所在的服务器以及 PHP 中的配置的最佳方法是什么?

2024-04-26

我正在尝试确定让 PHP 脚本确定脚本/站点当前在哪个服务器上运行的最佳方法。

目前我有一个switch()使用$_SERVER['SERVER_NAME'] . ':' . $_SERVER['SERVER_PORT']以确定它位于哪个服务器上。然后,它根据其所在的服务器设置一些路径、数据库连接参数、SMTP 参数和调试设置。 (根据现场需要,可能还有其他参数。)

这意味着我可以简单地将站点放到任何已配置的服务器上,而无需更改任何代码(特别是配置)。如果是新服务器,那么我只需添加一个新服务器case从那时起一切就准备好了。

我们已经完成了基于相同加载配置文件SERVER_NAME:SERVER_PORT组合,但发现它是您必须维护的另一个文件,而且我们不确定解析 ini 文件的速度(尽管每个服务器有额外的情况可能同样慢)。

我们遇到的另一个问题是,当一个站点经常在两台服务器之间移动时,但我们使用相同的服务器SERVER_NAME and SERVER_PORT在各个。这意味着我们需要暂时评论一个案例并确保它不会进入存储库。

还有其他想法吗?它需要在所有服务器上可用(有时SERVER_NAME and SERVER_PORT不是)。如果它能与 CLI PHP 一起使用那就太好了。


怎么样使用$_SERVER['SERVER_ADDR']并根据服务器的 IP 地址来确定您的身份。

更新:在虚拟主机情况下,您可能还想将 IP 与文档根路径连接起来,如下所示:

$id = $_SERVER['SERVER_ADDR'] . $_SERVER['DOCUMENT_ROOT'];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

确定脚本所在的服务器以及 PHP 中的配置的最佳方法是什么? 的相关文章

随机推荐