我们有一个在两台物理服务器之间移动的网站,都是RedHat Linux。无论运行哪个物理服务器,该站点看起来都完全相同。
我需要显示当前正在使用的物理服务器。
我尝试了$ _SERVER超全局,但它没有那个信息。
答案 0 :(得分:2)
要获取主机名,请使用gethostname()方法,该方法在内部执行“uname”。
<?php
echo gethostname();
?>
答案 1 :(得分:1)
在每台服务器上添加一个以不同名称上传的servanme.php(或config.php或config.xml ...)文件。
define("SERVER_NAME","AlphaOne");
它可以保存在一个单独的文件夹中,以降低使用错误版本意外覆盖它的可能性。
require '../servername/servername.php';
此文件也可以保存其他服务器配置数据(数据库连接,共享密钥......)
<server_name>AlphaOne</server_name>
<mysql_db>customerinfo</mysql_db>
请参阅php.net上的SimpleXML以获取读取XML标记配置文件的简便方法
include 'config.php'; // defines $xmlstr
$config_data = new SimpleXMLElement($xmlstr);
echo $config_data->server_name;
答案 2 :(得分:0)
另一种方法可能是调用&#34;主机名&#34; bash shell上的命令:
$hostname = shell_exec('hostname');