Uso apache con mongrel per servire una app rails con il seguente file di configurazione. Funziona bene. Vorrei servire un'altra applicazione e immagino di dover aggiungere un' altra sezione <VirtualHost *:80> </VirtualHost> ma non riesco a configurarla, continua a servirmi solo la prima applicazione potete aiutarmi? grazie <VirtualHost *:80> ServerName 72.192.209.102 DocumentRoot d:/jpnprj/jpn/public <Directory "d:/jpnprj/jpn/public"> Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> # Configure mongrel instances <Proxy balancer://mongrel_cluster> BalancerMember http://72.192.209.102:4005 BalancerMember http://72.192.209.102:4006 </Proxy> RewriteEngine On # Uncomment for rewrite debugging #RewriteLog logs/your_app_deflate_log deflate #RewriteLogLevel 9 # Check for maintenance file and redirect all requests RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f RewriteCond %{SCRIPT_FILENAME} !maintenance.html RewriteRule ^.*$ /system/maintenance.html [L] # Rewrite index to check for static RewriteRule ^/$ /index.html [QSA] # Rewrite to check for Rails cached page RewriteRule ^([^.]+)$ $1.html [QSA] # Redirect all non-static requests to cluster RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f RewriteRule ^/(.*)$ balancer://mongrel_cluster%{REQUEST_URI} [P,QSA,L] # Deflate AddOutputFilterByType DEFLATE text/html text/plain text/xml BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # Uncomment for deflate debugging #DeflateFilterNote Input input_info #DeflateFilterNote Output output_info #DeflateFilterNote Ratio ratio_info #LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' deflate #CustomLog logs/your_app_deflate_log deflate ErrorLog logs/your_app_error_log CustomLog logs/your_access_log combined </VirtualHost>
on 18.04.2008 15:16
on 18.04.2008 15:54
Sarebbe utile vedere la configurazione completa del secondo virtual host. Così alla cieca mi viene in mente che ad apache si deve dar modo di capire a quale cluster di mongrel passare le richieste. O lo fa guardando il server name o lo fa guardando le URL. Poiché il server name qui è l'indirizzo IP, non può farlo in questo modo, ma con questa configurazione non può usare un prefisso dell'URL per discriminare tra le due applicazioni. Prova a fare questa prova in locale (se su Windows, vero?) Metti in c:\windows\system32\drivers\etc\hosts queste due linee 127.0.0.1 app1.prova.com 127.0.0.1 app2.prova.com Poi configura i due virtual host uno con ServerName app1.prova.com e l'altro con ServerName app2.prova.com I due gruppi di mongrel dovranno poi partire su porte diverse, e nei due virtual host ad esempio configurali come: BalancerMember http://127.0.0.1:4005 BalancerMember http://127.0.0.1:4006 BalancerMember http://127.0.0.1:5005 BalancerMember http://127.0.0.1:5006 A questo punto è possibile che apache abbia tutte le informazioni necessarie. Guarda se col browser arrivi all'una e all'altra con http://app1.prova.com e http://app2.prova.com Poi per renderle visibili dall'esterno dovrai usare un servizio di DNS tra i tanti disponibili. Ciao Paolo Bi Ma wrote: > Uso apache con mongrel per servire una app rails con il seguente file > di configurazione. > Funziona bene. Vorrei servire un'altra applicazione e immagino di dover > aggiungere un' altra sezione > <VirtualHost *:80> > </VirtualHost> > ma non riesco a configurarla, continua a servirmi solo la prima > applicazione > potete aiutarmi? > grazie > > <VirtualHost *:80> > ServerName 72.192.209.102 > DocumentRoot d:/jpnprj/jpn/public > <Directory "d:/jpnprj/jpn/public"> > Options FollowSymLinks > AllowOverride None > Order allow,deny > Allow from all > </Directory> > > # Configure mongrel instances > <Proxy balancer://mongrel_cluster> > BalancerMember http://72.192.209.102:4005 > BalancerMember http://72.192.209.102:4006 > </Proxy> > > RewriteEngine On > # Uncomment for rewrite debugging > #RewriteLog logs/your_app_deflate_log deflate > #RewriteLogLevel 9 > # Check for maintenance file and redirect all requests > RewriteCond %{DOCUMENT_ROOT}/system/maintenance.html -f > RewriteCond %{SCRIPT_FILENAME} !maintenance.html > RewriteRule ^.*$ /system/maintenance.html [L] > # Rewrite index to check for static > RewriteRule ^/$ /index.html [QSA] > # Rewrite to check for Rails cached page > RewriteRule ^([^.]+)$ $1.html [QSA] > # Redirect all non-static requests to cluster > RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f > RewriteRule ^/(.*)$ balancer://mongrel_cluster%{REQUEST_URI} [P,QSA,L] > # Deflate > AddOutputFilterByType DEFLATE text/html text/plain text/xml > BrowserMatch ^Mozilla/4 gzip-only-text/html > BrowserMatch ^Mozilla/4\.0[678] no-gzip > BrowserMatch \bMSIE !no-gzip !gzip-only-text/html > # Uncomment for deflate debugging > #DeflateFilterNote Input input_info > #DeflateFilterNote Output output_info > #DeflateFilterNote Ratio ratio_info > #LogFormat '"%r" %{output_info}n/%{input_info}n (%{ratio_info}n%%)' > deflate > #CustomLog logs/your_app_deflate_log deflate > ErrorLog logs/your_app_error_log > CustomLog logs/your_access_log combined > </VirtualHost>
on 18.04.2008 19:27
Alle venerdì 18 aprile 2008, Paolo Montrasio ha scritto: > > > BalancerMember http://127.0.0.1:4005 > BalancerMember http://127.0.0.1:4006 > > BalancerMember http://127.0.0.1:5005 > BalancerMember http://127.0.0.1:5006 > Approfitto di questo thread per fare una domanda: da questa configurazione e da tutta la documentazione che ho letto ho dedotto che quindi ogni webapp dovrà avere almeno un'istanza di mongrel attiva su una porta diversa. Se è così, un server che fa ad esempio hosting deve avere almeno n istanze di mongrel attive per quanti sono i domini/webapps??? Ciao Giovanni.
on 18.04.2008 22:52
Forse devi aggiungere nella definizione del virtual host anche il balancer che usi <VirtualHost *:80> ..... ProxyPass / balancer://mongrel_cluster ..... </VirtualHost> e la stessa direttiva credo vada inserita nella definizione della sezione principale Il giorno 18/apr/08, alle ore 15:16, Bi Ma ha scritto: > grazie > > # Check for maintenance file and redirect all requests > # Deflate > #CustomLog logs/your_app_deflate_log deflate > ErrorLog logs/your_app_error_log > CustomLog logs/your_access_log combined > </VirtualHost> > -- > Posted via http://www.ruby-forum.com/. > _______________________________________________ > Ml mailing list > Ml@lists.ruby-it.org > http://lists.ruby-it.org/mailman/listinfo/ml Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com
on 19.04.2008 12:02
Giovanni Nicolazzo wrote: > Se � cos�, un server che fa ad esempio hosting deve avere almeno n istanze > di > mongrel attive per quanti sono i domini/webapps??? In shared hosting non si usano i mongrel ma fastcgi, almeno finché mod_rails non sarà uscito dalla beta.