允许外部服务器使用php访问没有dns的服务器


allow external server to access a server with no dns using php

我的开发服务器是外部的"dev.site.com"

我们的数据库位于外部IP地址上,但没有DNS记录。DNS是使用主机文件在本地设置的。

例如:database.site.com 55.444.33.21

由于我的外部开发服务器无法独立解析database.site.com或55.444.33.21,也无法向服务器添加本地DNS记录,我如何正确访问它?

PHP中有什么方法可以用来创建一个动态DNS吗?

我没有能力改变任何东西的设置方式,但我可以完全控制PHP代码库。从本质上讲,我正在寻找一种方法,在我的脚本中说55.444.33.21=database.site.com,所以每当我在代码中调用database.sitecom时,它都会起作用。

编辑我不能只使用ip访问它,也不能将它添加到服务器上的本地主机文件中。我的目标是找到解决这些问题的方法。

不要在代码中调用"database.site.com"。

相反,在代码的一个位置中定义一个常量,并在代码的其余部分使用该常量:

define("DATABASE_SERVER", "database.site.com");

const DATABASE_SERVER = "database.site.com";

然后在整个代码中,您将使用该常量而不是实际值。因此,当您需要将代码移动到另一个环境时,您可以通过更改常量的值来为该环境配置代码:

define("DATABASE_SERVER", "55.444.33.21");

const DATABASE_SERVER = "55.444.33.21";

通常,您希望在代码中尽可能少地使用实际的动态值。这为您的所有代码提供了多种更改的理由。值应该抽象在常量、变量或某种符号后面,这样,如果值发生变化,只有一段代码有理由发生变化。其余部分继续发挥作用。

快速破解,但您可以define("database.site.com", "55.444.33.21");