确定当前脚本是在运行服务器还是生产服务器上运行

Ben*_*Ben 1 php development-environment localhost production-environment

我有脚本调用不同的URL,具体取决于它们是由我的在线站点(发布)还是我的离线本地主机(开发)处理的.我想找到一个快速的方法来找到哪个是哪个.

我可以想出一些笨重的方法来做到这一点,但是有一种明确,快速,优雅的方法吗?就像是if(is_offline()) { ... }

Sal*_*n A 7

  1. $_SERVER["COMPUTERNAME"]IIS服务器上提供了一个名为的变量,您可以使用它来确定脚本是否在开发服务器或生产服务器上运行(MYMACHINEWWW37).

  2. 您还可以使用$_SERVER["HTTP_HOST"]变量(localhostwww.domain.com).

  3. 您还可以在开发服务器上创建一个空文本文件(注意不要上传它)并使用它is_file()来检查它是否存在(is_file(".foo")== truefalse).

  4. 如果两台服务器上的操作系统不同(WINNTLinux),则可以检查PHP_OS .

  5. 您可以检查__FILE__常量中是否存在某个路径(C:/ inetpub/wwwroot/website / vs. / home/www37 /).

  6. 3的变体: @include("override_server_with_local_config.php");