0

私の開発サーバーは外部の「dev.site.com」です

外部 IP アドレスにデータベースがありますが、その DNS レコードはありません。DNS は、ホスト ファイルを使用してローカルに設定されています。

例: database.site.com 55.444.33.21

私の外部開発サーバーは database.site.com または 55.444.33.21 を個別に解決できず、サーバーにローカル DNS レコードを追加することもできないため、どうすれば適切にアクセスできますか?

基本的にオンザフライDNSを作成するために利用できるPHPの方法はありますか?

設定方法を変更することはできませんが、PHP であるコードベースを完全に制御できます。基本的に、スクリプトで 55.444.33.21 = database.site.com と言う方法を探しているので、コードで database.site.com を呼び出すたびに機能します。

EDIT IPだけではアクセスできず、サーバー上のローカルホストファイルに追加できません。私の目標は、これらの問題の回避策を見つけることです。

4

2 に答える 2

2

コードで「database.site.com」を呼び出さないでください。

代わりに、コード内の1 か所で定数を定義し、その定数を残りのコード全体で使用します。

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";

一般に、実際の動的な値をコード内でできるだけ使用しないようにします。これにより、すべてのコードに複数の変更理由が与えられます。値は、何らかの定数、変数、またはシンボルの背後で抽象化する必要があります。これにより、値が変更された場合に、コードのその 1 つの部分のみが変更される理由になります。残りは引き続き機能します。

于 2012-07-25T16:58:11.680 に答える
1

簡単なハックですが、できますdefine("database.site.com", "55.444.33.21");

于 2012-07-25T16:55:14.690 に答える