Question

Quelle est la meilleure façon de déployer une application de compojure / ders? J'ai plusieurs sites en cours d'exécution sur l'hôte, donc je ne peux pas courir la jetée / bâtarde sur le port 80. Comment dois-je gérer plusieurs sites / applications en cours d'exécution dans le même hôte?

Était-ce utile?

La solution

Utiliser un serveur Web tel que Apache qui fonctionne sur le port 80 et utiliser proxy mod pour transférer le trafic vers le serveur d'applications. Vous pouvez utiliser un autre serveur Web tels que lighttpd ou nginx . Pour l'application vous sinatra pouvez aussi regarder passagers Phusion, alias rails mod, porte aka mod , qui fonctionne théoriquement avec une application rack, bien que je ne l'ai utilisé avec Rails.

Si vous regardez en elle un peu plus, vous trouverez qu'il ya plusieurs schémas de transfert du trafic vers le serveur d'applications à partir d'un serveur Web, mais le mécanisme de base pour faire ce genre de chose se résume toujours à avoir un serveur Web écoute sur le port 80 qui utilise des hôtes virtuels basés sur le nom pour ensuite transférer le trafic vers l'application appropriée.

Autres conseils

Je fais ce genre de chose avec différents serveurs autonomes (par exemple, AllegroServe) pendant des années. J'ai trouvé la meilleure approche pour être:

  • Exécuter chaque serveur sur un autre port non privilégié (par exemple 8080)
  • Exécuter pound (ou Nginx etc.) sur 80, configuré pour orienter les requêtes à chaque application.

Pound est grande, et les configurations finissent très simple (contrairement Nginx). Il fera également SSL et HTTP fronting sanitization pour vous, qui prend la charge de votre application.

Utilisez passager! http://modrails.com - il est un plugin pour apache et nginx qui vous permet de (très) facilement exécuter un rubis application comme un hôte virtuel

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top