人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

subdomain.example.com:80 から、XXX.XX.XX.XXX:8888 に、Apache Proxy を使用せずにリダイレクトする方法はありますか。
Ruby on Rails や Node.js など、Apache 無しで稼働するサーバ内の各サービスに、サブドメイン名によってアクセスを振り分けることは可能ですか。

現在、IP XXX.XX.XX.XXX 上で起動した、Ruby on Rails のwebサービス(port:80)を運営しており、example.com:80 からブラウザでアクセスできる状態となっております。

この度、同じサーバ内の別port (8888)で起動した、新しい Ruby on Rails サービスを制作しました。これを、サブドメイン(subdomain.example.com:80)からアクセスできるようにしたいと考えています。

これには、どのような方法がありますでしょうか。
ひとつには、Apache Proxy を経由させることが考えられると思います。
ですが、理由は特にないのですが、できればApache を使わない方法を探しております。

たとえば、iptables を使って解決することは可能でしょうか。
(少し検索した限りでは、だめそうでした。ですが、詳しくないので判断できません。)
または、他に方法があるようでしたら是非教えてください。

●質問者: piglovesyou
●カテゴリ:コンピュータ ウェブ制作
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● y-kawaz
●300ポイント ベストアンサー

80番でsubdomain以外のドメインも受けていて、Hostヘッダを見てsubdomain.example.comの時のみxxx.xxx.xx.xx:8888に飛ばすということでしょうか?
であれば何らかのHTTPProxyを経由しないと無理だと思います。その場合ApacheHttpdを避けるだけなら、node-proxyやnginxを使うという選択しになります。


全ての80番ポートへのアクセスを全てxxxx.xxxx.xxx.xxxx:8888へ、TCPレベルで転送したいだけならiptablesで出来ます。それで良ければ必要なら後で追加回答します。


piglovesyouさんのコメント
はい、 example.com:80 -> xxx.xxx.xx.xx:80 subdomain.example.com:80 -> xxx.xxx.xx.xx:8888 を考えておりました。 > 何らかのHTTPProxyを経由しないと無理 > node-proxy これが知りたかったことです。ありがとうございます。 > 全ての80番ポートへのアクセスを全てxxxx.xxxx.xxx.xxxx:8888へ こちらは存じ上げておりました。 大変参考になりました。ありがとうございます。

y-kawazさんのコメント
間違って紹介したんじゃと今突然思い出したんですがやっぱ間違ってたので訂正(^^; メジャーなのはnode-http-proxyですね。 node-proxyってプロジェクトも存在するから紛らわしいです。

piglovesyouさんのコメント
はい、nodejitsu / node-http-proxy ですね。いろいろあって、現在こちらを利用させてもらっています。 まさかproxy まわりのモジュールも揃ってると思わなかったので、id:y-kawaz さんの回答はとても参考になりました!

2 ● kodairabase
●0ポイント

Ruby on Railsのポート変更(WEBric) http://konohaotoshi.blog69.fc2.com/blog-entry-23.html を参考に、ポート 8888 にしてください。


piglovesyouさんのコメント
ありがとうございます。 ごめんなさい、特定のポートでサービスを立ち上げる方法は分かっております。読みきれていなかったらすみません。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ