私はウェブを検索しましたが、複数のサイト間でコードを共有したり、データベースを隔離されたモデルに分けたりするための情報しか見つけることができません。これは私が望むものではありません。同じレールサーバ上の複数のプロジェクトの複数のサイト
私は、単一のDNSアドレスおよび単一ポートで、シングルレール・サーバを実行したい - http://myportal.com
- いくつかの他のサイトを処理する - http://myportal.com/site1
、http://myportal.com/site2
など
私は、各サイトが独自のフォルダを持っていたいです(そしてSCMリポジトリ)、独自のデータベース、独自のルーティング - それ自身のすべてです。つまり、私はスタンドアローンとして各サイトを開発できるようにしたい、つまりhttp://localhost:3000
とし、http://localhost:3000/site1
ではなくsite1サイトを実行する必要があることを意味します。サーバー上で
、ルートサイト(http://myportal.com
アドレスに応答一つは、私はからサーバーを実行し、それが上の別のディレクトリになります他のサイト(の絶対パスを知っておくべきものでなければなりませんサーバー、ルートサイトの子ディレクトリではない)、それらのルーティング情報を提供しますが、他のサイトのファイルにチェーンする必要があります。つまり、http://myportal.com/site1/books/
というアドレスに移動すると、ルートサイトはhttp://myportal.com/site1
を処理し、 /books/
ルートサイトは、他のサイトの内部ルーティング構造について知る必要はありません。
これは可能ですか?今はgに付属のレールサーバーを実行していますWindows Server 2008サーバー上でコマンドラインからrails server
と入力してください。しかし、私が説明した目標を達成するためには、別のサーバーをインストールするつもりです。
ありがとうございます!
を私が正しく理解していればそう、私は複数のポートを使用する必要がある、とやってDNSのルーティング作業は?単一のポートでこれを行う方法はありませんか? –
DNSはクライアントをサーバーに誘導します。サーバーは、内部的に要求を適切なポートにルーティングする必要があります。 'VirtualHost'ディレクティブはデフォルトで特定のホスト名で特定のポートだけを取得するため、複数のサイトを分割する最も簡単な方法です。複数のホスト+ポートの組み合わせを使用すると、必要な柔軟性が得られます。 – tadman
OK、私はそれを試してみましょう。レール上の 'VirtualHost'に関するチュートリアルはありますか? –