Domanda

Qual è il modo preferito di distribuzione di un compojure / applicazioni Sinatra? Ho più siti in esecuzione sul computer host in modo che io non posso correre pontile / bastardo sulla porta 80. Come devo gestire più siti / applicazioni in esecuzione allo stesso host?

È stato utile?

Soluzione

Utilizza un server Web come Apache che viene eseguito sulla porta 80 e utilizzare host virtuali per dirigere il traffico verso il server di applicazione giusta. Quindi, in pratica si dovrebbe eseguire ogni server di applicazioni (pontile / bastardo, ecc) su una porta diversa e poi in ogni host virtuale avrebbe una configurazione diversa per usare qualcosa come delega mod per inoltrare il traffico verso il server app. Si potrebbe utilizzare un server Web diverso, come lighttpd o nginx . Per l'applicazione Sinatra si potrebbe anche guardare Phusion passeggeri, alias rotaie mod, alias mod cremagliera, che funziona in teoria con qualsiasi applicazione rack, anche se ho usato solo con Rails.

Se si guarda in ancora un po 'ci si accorge che ci sono vari sistemi per la trasmissione di traffico al server di applicazione da un server Web, ma il meccanismo di base per fare questo genere di cose si riduce sempre ad avere un server web che ascolta sulla porta 80 che utilizza il nome host virtuali basati per poi inoltrare il traffico verso l'applicazione appropriata.

Altri suggerimenti

Ho fatto questo genere di cose con i vari server standalone (per esempio, AllegroServe) per anni. Ho trovato l'approccio migliore per essere:

  • Esegui ogni server su un diverso, porta non privilegiati (ad esempio 8080)
  • Esegui pound (o Nginx, ecc) su 80, configurato per mappare le richieste di ogni applicazione.

libbra è grande, e le configurazioni finiscono molto semplice (a differenza Nginx). Sarà anche fare SSL fronteggia e sanificazione HTTP per voi, che prende il carico fuori la vostra applicazione.

Utilizzare passeggero! http://modrails.com - si tratta di un plugin per apache e nginx che consente di (molto) esegue facilmente un rubino app come un host virtuale

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top