Compojure/sinatraアプリケーションを展開する好ましい方法は何ですか?私は複数のサイトをホスト上で実行しているので、ポート80でjetty/mongrelを実行することはできません。同じホストで複数のサイト/アプリケーションを処理するにはどうすればよいですか?Compojure/Sinatraアプリケーションの展開
3
A
答えて
7
Apacheなどのポート80で動作するWebサーバーを使用し、適切なアプリケーションサーバーにトラフィックを誘導するためにvirtual hostsを使用します。つまり、基本的には、各アプリケーションサーバー(jetty /雑種など)を別のポートで実行し、各仮想ホスト内では、mod proxyのようなものを使用してトラフィックをアプリケーションサーバーに転送するような構成になります。 lighttpdやnginxなど、別のWebサーバーを使用することもできます。 sinatraアプリの場合、理論的にはラックアプリで動作するPhusion Passenger, a.k.a mod rails, a.k.a mod rackを見ることもできますが、これはRailsでしか使用していません。
さらに詳しく調べると、Webサーバーからアプリケーションサーバーにトラフィックを転送するためのさまざまなスキームがあることがわかりますが、この種のことを行うための基本的な仕組みは、常にWebサーバー名前ベースの仮想ホストを使用してトラフィックを適切なアプリケーションに転送するポート80を待ち受けます。
3
私は何年もの間、さまざまなスタンドアロンサーバー(AllegroServeなど)でこの種の作業を行ってきました。私がする最良の方法を見つけた:
- 実行
- 実行
pound
(またはnginxの等)80上の(例えば8080など)が異なる、非特権ポート上の各サーバー、リクエストをマップするように構成各アプリケーションに適用されます。
ポンドは素晴らしく、構成は非常に簡単です(Nginxとは異なります)。 SSLフロントニングとHTTPサニタイズも行いますが、これはアプリケーションの負担となります。
0
乗客を使用してください! http://modrails.com - これは、(非常に)簡単に仮想ホストとしてルビーアプリを実行できるようにするapacheとnginxのプラグインです
関連する問題
- 1. アプリケーションの展開
- 2. アプリケーションの展開
- 3. Windowsアプリケーションの展開
- 4. 展開DotNetのアプリケーション
- 5. ASP.NETアプリケーションの展開のベストプラクティス
- 6. NAnt Webアプリケーションの展開
- 7. ASP.Netアプリケーションの展開プロセス
- 8. MS Lightswitchアプリケーションの展開
- 9. Javaアプリケーションの展開/インストーラオプション?
- 10. VB6アプリケーションの展開方法
- 11. .Netアプリケーションの展開とMicrosoft.Office.Interop.Excel
- 12. WP7アプリケーションの展開用プレゼンテーション
- 13. UWP/Webアプリケーションの展開パッケージ
- 14. 平均アプリケーションを展開
- 15. FlexdashboardでShinyアプリケーションを展開
- 16. サブディレクトリにVueJSアプリケーションを展開
- 17. AWSにWebアプリケーションを展開
- 18. アプリケーションを展開する
- 19. コンボボックスは、私がアプリケーションを開発、展開
- 20. JavaアプリケーションのSQL Serverデータベースへの展開
- 21. JHipster Microservices CloudFoundryへのアプリケーションの展開
- 22. WIndows上のARToolkitアプリケーションの展開
- 23. LG P500デバイスのAndroidアプリケーションの展開
- 24. 展開ジャンゴと自分のアプリケーションの
- 25. 展開ピラミッドWebアプリケーション(Apacheの/ mod_wsgiの)
- 26. ASP.NETアプリケーションの展開の問題
- 27. .NETアプリケーションの展開IISのエラー
- 28. コードイグナイタの展開IIS 7での1.7.2アプリケーション
- 29. 展開ノード/ Expressのアプリケーションは - バベル/ ES6エラー
- 30. ASP.NET MVC "在庫アプリケーション"展開の問題