本番環境と検証環境のURLを同じにする話
2012-04-09 windows
とある Rest API、検証環境と本番環境でIPアドレスもURLも違ってて、あ、以下のような感じ、
- 検証環境:http://172.22.0.150/test/api.php
- 本番環境:http://192.168.10.20/honban/api.php
検証の都度APIのURL書き換えるのめんどくさい、本番用URLのまま検証用URLにリクエスト飛ばしたい、ということでいろいろ調べた結果、とりあえず以下のようにして解決。
1.自分のマシンに本番環境のIPアドレスを割りあてる
1台のPCに複数IPアドレス割りあてられるの知らんかった... 手元のWindows7環境だと、以下の手順で出来た。
- コントロールパネル
- ネットワークと共有センター
- ローカルエリア接続
- プロパティ
- TCP/IPv4 のプロパティ
- 詳細設定
- IP設定タブの「追加」クリックして本番環境のIPアドレス入力
これで、自分のマシンに 192.168.10.20 を割りあてられたから、http://192.168.10.20/ でも http://127.0.0.1/ でもローカルの httpd にリクエストがとんでいく。
2.リバースプロキシ使って検証環境にリクエスト飛ばす
ローカル の httpd.conf に以下設定を書いて httpd を再起動。
<IfModule mod_proxy.c> ProxyRequests off ProxyPass /honban/api.php http://172.22.0.150/test/api.php ProxyPassReverse /honban/api.php http://172.22.0.150/test/api.php </IfModule>
これで、http://192.168.10.20/honban/api.php にアクセスすると http://172.22.0.150/test/api.php にリクエストがとんでいく。
もっと簡単な方法はないのか
たとえばhostsファイルのような書き方で
172.22.0.150/test/api.php 192.168.10.20/honban/api.php
ていうのできればすごく楽なんだけど、ちょっとやりかたわかんない。
≪ 2012-04-11
heroku で PHP 動かした
2012-04-06 ≫
Iron(chrome)で日本語入力ができなくなったけど Flash を入れなおしたら直った