2

dev.domain.com、staging.domain.comなどのドメイン名に基づいて「環境」をProduction、Dev、Stagingなどに設定するようなことをするのは悪い考えです。

誰かがhostsファイルを編集してdev.domain.comがdomain.comを指すようにすると、システム実際にProdにあるのにDevにあると見なすことができますか?これは、Dev固有のコードが完全に見知らぬ人によって実行されることを意味します。

これは可能ですか、それともサーバー変数に手動で設定するなど、環境を判断するためのより良い方法がありますか?

参考までに、PHPを使用しています。

4

3 に答える 3

3

マシンのサーバー変数に環境を設定します。これにより、展開中にそれを制御することができ、許可されていない人がそれをいじることはできません. ただし、開発者が不注意に本番環境に接続することを心配している場合、それはまったく別の問題です. jndi (Java の世界) などの他のプロセスや、実行時または展開時に置き換えられる環境キー (任意の言語で動作) を介して、本番資格情報へのアクセスを制御する必要があります。

于 2012-11-07T22:58:24.400 に答える
0

これは、ドメインをどのように使用するかによって異なりますか?domain.comがありますが、いくつかのサブドメイン、sub1.domain.com、sub2.domain.comなどがあり、すべてのサブドメインが異なるユーザーやアプリケーションによって管理されているとします。

于 2012-11-07T23:28:07.947 に答える
0

ドメイン名に基づいて「環境」を本番、開発、ステージングなどに設定することは絶対に安全です。これは、ドメイン名が何であるかを完全に制御できるためです。

注意: 自分のドメイン名が何であるかを他人が信じさせるものを信用しないでください。たとえば、$_SERVER['HTTP_HOST']あなたのドメイン名ではありません。これは、クライアントが送信した HTTP Host ヘッダーの値であるため、自由に操作できます。

于 2012-11-07T23:02:44.027 に答える