0

セットアップは次のとおりです。Apache構成のvhostエントリを使用して、2つのアプリケーションが同じLinuxサーバーでホストされています。いう :

http://greatapp.example.com

http://superapp.example.com

両方とも、サーバー側の http 要求を 3 番目の URL に送信する機能を備えています (php cURL / file_get_contents を使用)。

http://apis.example.com

これで、ホスト ファイル '/etc/hosts' に のホスト エントリがあります。

xx.xx.xx.xx       apis.example.com

これは、greatapp.example.com コードのみを対象としており、superapp.example.com を対象としていません。

greatapps.example.comはホスト エントリを使用するが、superapp.example.comはapis.example.comのパブリック IP を使用するようにサーバーを構成する方法

4

2 に答える 2

1

直接行うことはできません。ホストの名前空間はホストごとにグローバルです。

別のファイルを使用して、仮想マシンで apache の 1 つを実行でき/etc/hostsます。

于 2012-02-20T06:55:21.093 に答える
0

これが私がそれを行う方法です:

  1. 私の各アプリには、読み取られる構成ファイルがあります。その構成ファイルは、使用する URL を指定できます。既存のライブラリを使用して構成ファイルを読み取ることができます。この例では、Zend_Config_Ini を使用します。優れたアプリの構成ファイルは次のようになります。

[設定]

urls.third_party = 'xxx.xxx.xxx.xxx'

これはスーパーアプリ用です

[設定]

urls.third_party = 'http://apis.example.com'

2. たとえば、Zend_Config_Ini を使用して構成ファイルから URL を読み取ります。

require_once 'Zend/Config/Ini.php';
$config = new Zend_Config_Ini('application.ini', 'settings');
$app_config = $config->toArray();

$third_party_url = $app_config['urls']['third_party'];

関連するアプリの構成ファイルのURLを簡単に変更できるため、この方法の方が柔軟だと思います。

于 2012-02-20T07:16:34.123 に答える