Duda acerca de servir contenido estatico con mongrel

Hola lista, como están, tengo una pequeña duda acerca del deploy, es que
tengo una aplicacion en mi servidor , la cual esta en production
environment
, con apache y mongrel.
pero viendo el log de un mongrel me parece que estoy sirviendo contenido
estatico con mongrel.
este es un extracto de lo que aparece en el mongrel.4000.log

** Writing PID file to log/mongrel.4000.pid
127.0.0.1 - [Sat, 08 Dec 2007 15:58:20 GMT] “GET
/javascripts/prototype.js?1195948389 HTTP/1.1”
127.0.0.1 - [Sat, 08 Dec 2007 15:58:22 GMT] “GET
/javascripts/dragdrop.js?1195948315 HTTP/1.1”
127.0.0.1 - [Sat, 08 Dec 2007 15:58:24 GMT] “GET
/javascripts/jquery.js?1195948377 HTTP/1.1”
127.0.0.1 - [Sat, 08 Dec 2007 15:58:27 GMT] “GET
/javascripts/application.js?1195948292 HTTP/1.1”
127.0.0.1 - [Sat, 08 Dec 2007 15:58:29 GMT] “GET /images/bg.jpg
HTTP/1.1”
127.0.0.1 - [Sat, 08 Dec 2007 15:58:31 GMT] “GET
/images/foto_artenlinea.png?1195947785 HTTP/1.1”

segun lo que aparece , aparentemente si estoy sirviendo contenido
estático
con mongrel no?
pero es raro porque en el virtualhost tengo que todos los requests
estaticos
los tire a apache y los no estaticos a mongrel, así:

RewriteEngine On

<Proxy balancer://mongrelcluster>
BalancerMember http://127.0.0.1:4000
BalancerMember http://127.0.0.1:4001

Redirect all non-static requests to Mongrel

RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
RewriteRule ^/(.*)$ balancer://mongrelcluster%{REQUEST_URI} [P,QSA,L]

ProxyPass / balancer://mongrelcluster/
ProxyPassReverse / balancer://mongrelcluster/
ProxyPreserveHost on

<Proxy *>
Order deny,allow
Allow from all

o estoy haciendo algo mal???
espero que alguien me pueda explicar mi duda

Saludos Cordiales

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Miguel M. wrote:

127.0.0.1 - [Sat, 08 Dec 2007 15:58:22 GMT] "GET
con mongrel no?
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f

o estoy haciendo algo mal???
espero que alguien me pueda explicar mi duda

Saludos Cordiales

Hola Miguel,

La RewriteCond es correcta, pero a lo mejor esta mal seteado el
DocumentRoot del Apache o los permisos del mismo y por eso los
contenidos no estan accesibles y van a parar al Mongrel.
Para asegurarte que los contenidos estáticos los está sirviendo Apache
podés mirar las headers de los ficheros y verificar la signature de
Apache.

Saludos,
Mauro.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHYqoQUCEUdvXOcNIRAlQRAKCkZ85sPcJjYT4hO0E2Ik8GINNNegCeLJ26
EnIhLnL2Hy6177C30NZYz68=
=RYkT
-----END PGP SIGNATURE-----

No entiendo porque no te funciona, pero tengo una posible solución :slight_smile:
Prueba esto:

ProxyPass /images !
ProxyPass /stylesheets !
ProxyPass /javascripts !
ProxyPass /system !
ProxyPass / balancer://mongrelcluster/
ProxyPassReverse / balancer://mongrelcluster/
ProxyPreserveHost on

Saludos

Miguel M. escribió:

Hola, Gracias por sus respuestas.
Rafael, no me funcionó lo tu solución , de hecho no la pude implementar
ya
que me arrojo un error al hacer el reload del apache:

este fué el error:

$ sudo /etc/init.d/apache2 force-reload
Forcing reload of web server (apache2)… waiting Syntax error on line
18 of
/etc/apache2/sites-enabled/site:
ProxyPass can not have a path when defined in a location

no se que puede ser eso.

Mauro , no se si apache esté mal configurado , probablemente no , ya que
el
otro sitio que tengo en Rails con mongrel funciona correctamente y con
el
mismo codigo en el virtualhost.

la verdad es que no tengo idea de lo que puede estar pasando.

Saludos

¿Qué versión de apache tienes instalada?

Miguel M. escribió:

Tengo la 2.2.3

saludos

Miguel M. wrote:

no se que puede ser eso.

Mauro , no se si apache esté mal configurado , probablemente no , ya
que el otro sitio que tengo en Rails con mongrel funciona
correctamente y con el mismo codigo en el virtualhost.

Osea que si ponés una página estática en ‘public’ e intantas acceder a
ella podés verla y asegurar que te la sirve Apache?
También podría pegar aca los logs del Apache cuando intentas acceder a
ese vhost a ver si se queja de algo.

Saludos,
Happy Mondays!