你在这里的问题是这不是一个静态的信息.任何给定的计算机可以具有与多个网卡相关联的多个IP地址.有些/全部/没有一个可能有它们可用的Web服务.您对操作系统的问题可能没有一个单一的答案.
如果您的服务器具有简单的单一IP地址配置,那么您可能最好对其进行硬编码,这是最简单的选择.如果你想动态地确定它,这里有一些信息,你会希望找到有用的:
> $_SERVER [‘HTTP_HOST’]包含输入浏览器地址栏的地址,以便访问页面.如果您通过在浏览器中输入(例如)http://192.168.0.1/index.php来访问该页面,$_SERVER [‘HTTP_HOST’]将为192.168.0.1.
>如果您使用DNS名称访问该页面,则gethostbyname($_ SERVER [‘HTTP_HOST’]);将该DNS名称变成IP地址.
> $_SERVER [‘SERVER_NAME’]包含在Web服务器配置中配置的名称,因为它是服务器名称.如果你使用这个,你也可以在PHP中硬编码.
> $_SERVER [‘SERVER_ADDR’]将包含服务器主IP地址的操作系统.这可能是或不是用于访问该页面的IP地址,并且它可能是也可能不是与该Web服务器绑定的IP地址.这主要取决于操作系统和服务器配置.如果服务器有一个IP地址,这可能是一个安全的赌注,尽管有些情况下可能包含127.0.0.1.
很长的一点是,没有100%可靠的方式来确定Web服务器的有保证的工作IP地址,而不检查发送到Web服务器的信息,以生成您正在创建的页面,其中你说完全失败了它的目的.