Apache/Mongrel/Rails relative path problem

View: New views
9 Messages — Rating Filter:   Alert me  

Apache/Mongrel/Rails relative path problem

by JackK :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Folks,

I know this is probably a little off topic since I'm looking for
Apache/Mongrel help with a RoR application. But I can't seem to find
anything to shed some light and was hoping someone on here might be
able to help.

I've got a RoR app running via Mongrel under Apache/SSL on a
development server. The application is defined via Apache/SSL to be
running under a certain directory such that https://host.development.domain.edu/directory
works to get to the application and the application knows about this
directory with this line in in the development.rb file

ActionController::AbstractRequest.relative_url_root = '/dps'

I figure RoR/Mongrel understands because the initial page loads and
moving to another page loads. The problem is that none of the CSS an
Javascript files stored under the public directory are loading. The
HTML generated by the link_tag options are working to generate the
appropriate HTML:

<link type="text/css" rel="stylesheet" media="screen" href="/dps/
stylesheets/notice.css">

In looking at apache error logs, is seems that Apache is trying to
find these .css and .js files under the Apache web root directory
structure. What do I need to do so that Apache passes all requests
onto Mongrel?

Any hints or suggestions would be welcome,
Jak
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@...
To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe@...
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: ****[Rails] Apache/Mongrel/Rails relative path problem

by Craig White-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Thu, 2008-07-24 at 06:45 -0700, Jack wrote:

> Folks,
>
> I know this is probably a little off topic since I'm looking for
> Apache/Mongrel help with a RoR application. But I can't seem to find
> anything to shed some light and was hoping someone on here might be
> able to help.
>
> I've got a RoR app running via Mongrel under Apache/SSL on a
> development server. The application is defined via Apache/SSL to be
> running under a certain directory such that https://host.development.domain.edu/directory
> works to get to the application and the application knows about this
> directory with this line in in the development.rb file
>
> ActionController::AbstractRequest.relative_url_root = '/dps'
>
> I figure RoR/Mongrel understands because the initial page loads and
> moving to another page loads. The problem is that none of the CSS an
> Javascript files stored under the public directory are loading. The
> HTML generated by the link_tag options are working to generate the
> appropriate HTML:
>
> <link type="text/css" rel="stylesheet" media="screen" href="/dps/
> stylesheets/notice.css">
>
> In looking at apache error logs, is seems that Apache is trying to
> find these .css and .js files under the Apache web root directory
> structure. What do I need to do so that Apache passes all requests
> onto Mongrel?
>
> Any hints or suggestions would be welcome,
----
1 - why not show us what your http configuration looks like...

2 - I've never used any designation for 'relative_url_root' in any of
the environment files...not sure why you would do that

3 - the links to your stylesheets & javascripts are clearly being
impacted by your 'relative_url_root' which seems clear is the reason
that they are not being located

Craig


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@...
To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe@...
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: ****[Rails] Apache/Mongrel/Rails relative path problem

by JackK :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message




On Jul 24, 10:26 am, Craig White <craigwh...@...> wrote:

> On Thu, 2008-07-24 at 06:45 -0700, Jack wrote:
> > Folks,
>
> > I know this is probably a little off topic since I'm looking for
> > Apache/Mongrel help with a RoR application. But I can't seem to find
> > anything to shed some light and was hoping someone on here might be
> > able to help.
>
> > I've got a RoR app running via Mongrel under Apache/SSL on a
> > development server. The application is defined via Apache/SSL to be
> > running under a certain directory such thathttps://host.development.domain.edu/directory
> > works to get to the application and the application knows about this
> > directory with this line in in the development.rb file
>
> > ActionController::AbstractRequest.relative_url_root = '/dps'
>
> > I figure RoR/Mongrel understands because the initial page loads and
> > moving to another page loads. The problem is that none of the CSS an
> > Javascript files stored under the public directory are loading. The
> > HTML generated by the link_tag options are working to generate the
> > appropriate HTML:
>
> > <link type="text/css" rel="stylesheet" media="screen" href="/dps/
> > stylesheets/notice.css">
>
> > In looking at apache error logs, is seems that Apache is trying to
> > find these .css and .js files under the Apache web root directory
> > structure. What do I need to do so that Apache passes all requests
> > onto Mongrel?
>
> > Any hints or suggestions would be welcome,
>
> ----
> 1 - why not show us what your http configuration looks like...
>
> 2 - I've never used any designation for 'relative_url_root' in any of
> the environment files...not sure why you would do that
>
> 3 - the links to your stylesheets & javascripts are clearly being
> impacted by your 'relative_url_root' which seems clear is the reason
> that they are not being located
>
> Craig

My apologies in advance for the long post. At the end is the httpd
configuration.

Actually if I don't have the relative_url_root, I still have the same
problem with the css/js files. But in addition, the RoR application
controller fails to be able to route properly.

I should mention a couple of things regarding this RoR config/app
problem:
1. I'm trying to troubleshoot this because I'm one of the RoR
programmers for the app. The admin guy is just configuring the server
and not familiar with the app. (I'm familiar with some of the server
setup stuff from other work I do.)

2. This  application uses Pubcookie for authentication. This is one of
the reasons that we have used the relative_url_root, if I'm
remembering correctly. The other reason has to do with providing a
user friendly URL in the future when this app is demoed and used.
Lines 23-257 below are for making sure apache passes the pubcookie
user id along to the Rails app.

Apache Server Information

Configuration:
In file: /etc/httpd/conf/httpd.conf
  44: ServerTokens OS
  63: PidFile run/httpd.pid
  68: Timeout 120
  74: KeepAlive Off
  81: MaxKeepAliveRequests 100
  87: KeepAliveTimeout 15
 101: StartServers 8
 102: MinSpareServers 5
 103: MaxSpareServers 20
 104: ServerLimit 256
 105: MaxClients 256
 106: MaxRequestsPerChild 4000
 134: Listen 80
In file: /etc/httpd/conf.d/BackupPC.conf
   1: <Directory /usr/share/BackupPC/sbin/>
   9:   order deny,allow
  10:   deny from all
  11:   allow from 127.0.0.1
  12:   AuthType Basic
  13:   AuthUserFile /etc/BackupPC/apache.users
  14:   AuthName "BackupPC
  16:   require valid-user
    : </Directory>
  21: Alias /BackupPC/images /usr/share/BackupPC/html/
  22: ScriptAlias /BackupPC /usr/share/BackupPC/sbin/BackupPC_Admin
In file: /etc/httpd/conf.d/manual.conf
   5: AliasMatch ^/manual(?:/(?:de|en|fr|ja|ko|ru))?(/.*)?$ "/var/www/
manual$1"
   7: <Directory "/var/www/manual">
   8:   Options Indexes
   9:   AllowOverride None
  10:   Order allow,deny
  11:   Allow from all
    : </Directory>
In file: /etc/httpd/conf.d/php.conf
  11: AddHandler php5-script .php
  12: AddType text/html .php
  18: DirectoryIndex index.php
In file: /etc/httpd/conf.d/pubcookie.conf
   3: PubcookieGrantingCertFile /usr/local/pubcookie/keys/
pubcookie_granting.cert
   4: PubcookieSessionCertFile /etc/pki/tls/certs/STAR_LIB_cert.pem
   5: PubcookieSessionKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
   6: PubcookieKeyDir /usr/local/pubcookie/keys
   7: PubcookieDomain .virginia.edu
   8: PubcookieAuthTypeNames Pubcookie NetBadge
   9: PubcookieLogin https://netbadge.virginia.edu/
  12: <Directory "/">
  13:   PubcookieInactiveExpire -1
    : </Directory>
In file: /etc/httpd/conf.d/python.conf
   9: <Directory "/var/www/manual/mod/mod_python">
  10:   <Files *.html>
  11:     SetHandler default-handler
    :   </Files>
    : </Directory>
In file: /etc/httpd/conf.d/squid.conf
   6: ScriptAlias /Squid/cgi-bin/cachemgr.cgi /usr/lib64/squid/
cachemgr.cgi
   9: <Location /Squid/cgi-bin/cachemgr.cgi>
  10:   order allow,deny
  11:   allow from localhost.localdomain
    : </Location>
In file: /etc/httpd/conf.d/ssl.conf
  18: Listen 443
  30: AddType application/x-x509-ca-cert .crt
  31: AddType application/x-pkcs7-crl .crl
  37: SSLPassPhraseDialog builtin
  43: SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
  44: SSLSessionCacheTimeout 300
  49: SSLMutex default
  61: SSLRandomSeed startup file:/dev/urandom 256
  62: SSLRandomSeed connect builtin
  74: SSLCryptoDevice builtin
  81: <VirtualHost _default_:443>
  84:   DocumentRoot "/var/www/html_ssl"
  89:   ErrorLog logs/ssl_error_log
  90:   TransferLog logs/ssl_access_log
  91:   LogLevel warn
  95:   SSLEngine on
 100:   SSLProtocol all -SSLv2
 105:   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:
+LOW
 112:   SSLCertificateFile /etc/pki/tls/certs/STAR_LIB_cert.pem
 119:   SSLCertificateKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
 187:   <Files ~ "\.(cgi|shtml|phtml|php3?)$">
 188:     SSLOptions +StdEnvVars
    :   </Files>
 190:   <Directory "/var/www/cgi-bin">
 191:     SSLOptions +StdEnvVars
    :   </Directory>
 220:   SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-
shutdown downgrade-1.0 force-response-1.0
 226:   CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %
{SSL_CIPHER}x \"%r\" %b"
 229:   ProxyRequests Off
 230:   ProxyPreserveHost On
 232:   <LocationMatch ^/dps/request/uva|^/dps/admin>
 233:     RequestHeader set X_FORWARDED_PROTO 'https'
 235:     SetEnv force-proxy-request-1.0 1
 236:     SetEnv proxy-nokeepalive 1
 237:     AuthType NetBadge
 238:     require valid-user
 239:     PubcookieAppId dps
 240:     ProxyPassReverse http://127.0.0.1:9050
 241:     RewriteEngine On
 242:     RewriteCond %{REQUEST_FILENAME} !-f
 243:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
 244:     RewriteRule /dps/(.*) http://127.0.0.1:9050/$1 [E=RU:%
{REMOTE_USER},P,QSA,L]
 245:     RequestHeader add REMOTE_USER %{RU}e
    :   </LocationMatch>
 247:   <LocationMatch ^/dps>
 248:     RequestHeader set X_FORWARDED_PROTO 'https'
 250:     SetEnv force-proxy-request-1.0 1
 251:     SetEnv proxy-nokeepalive 1
 252:     ProxyPassReverse http://127.0.0.1:9050
 253:     RewriteEngine On
 254:     RewriteCond %{REQUEST_FILENAME} !-f
 255:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
 256:     RewriteRule /dps/(.*) http://127.0.0.1:9050/$1 [E=RU:%
{REMOTE_USER},P,QSA,L]
 257:     RequestHeader add REMOTE_USER %{RU}e
    :   </LocationMatch>
    : </VirtualHost>
In file: /etc/httpd/conf.d/webalizer.conf
   6: Alias /usage /var/www/usage
   8: <Location /usage>
   9:   Order deny,allow
  10:   Deny from all
  11:   Allow from 127.0.0.1
  12:   Allow from ::1
    : </Location>
In file: /etc/httpd/conf.d/welcome.conf
   7: <LocationMatch "^/+$">
   8:   Options -Indexes
   9:   ErrorDocument 403 /error/noindex.html
    : </LocationMatch>
In file: /etc/httpd/conf/httpd.conf
 230: User apache
 231: Group apache
 250: ServerAdmin root@localhost
 273: UseCanonicalName Off
 280: DocumentRoot "/var/www/html"
 290: <Directory />
 291:   Options FollowSymLinks
 292:   AllowOverride None
    : </Directory>
 305: <Directory "/var/www/html">
 319:   Options Indexes FollowSymLinks
 326:   AllowOverride None
 331:   Order allow,deny
 332:   Allow from all
    : </Directory>
 340: <Directory "/var/www/html_ssl">
 355:   Options All
 363:   AllowOverride AuthConfig
 368:   Order allow,deny
 369:   Allow from all
    : </Directory>
 391: UserDir disable
 427: DirectoryIndex index.html index.html.var
 434: AccessFileName .htaccess
 440: <Files ~ "^\.ht">
 441:   Order allow,deny
 442:   Deny from all
    : </Files>
 449: TypesConfig /etc/mime.types
 460: DefaultType text/plain
 469: MIMEMagicFile conf/magic
 480: HostnameLookups Off
 508: ErrorLog logs/error_log
 515: LogLevel warn
 521: LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-
Agent}i\"" combined
 522: LogFormat "%h %l %u %t \"%r\" %>s %b" common
 523: LogFormat "%{Referer}i -> %U" referer
 524: LogFormat "%{User-agent}i" agent
 550: CustomLog logs/access_log combined
 560: ServerSignature On
 575: Alias /icons/ "/var/www/icons/"
 577: <Directory "/var/www/icons">
 578:   Options Indexes MultiViews FollowSymLinks
 579:   AllowOverride None
 580:   Order allow,deny
 581:   Allow from all
    : </Directory>
 589: DAVLockDB /var/lib/dav/lockdb
 600: ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
 606: <Directory "/var/www/cgi-bin">
 607:   AllowOverride None
 608:   Options None
 609:   Order allow,deny
 610:   Allow from all
    : </Directory>
 628: IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable
 635: AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
 637: AddIconByType (TXT,/icons/text.gif) text/*
 638: AddIconByType (IMG,/icons/image2.gif) image/*
 639: AddIconByType (SND,/icons/sound2.gif) audio/*
 640: AddIconByType (VID,/icons/movie.gif) video/*
 642: AddIcon /icons/binary.gif .bin .exe
 643: AddIcon /icons/binhex.gif .hqx
 644: AddIcon /icons/tar.gif .tar
 645: AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
 646: AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
 647: AddIcon /icons/a.gif .ps .ai .eps
 648: AddIcon /icons/layout.gif .html .shtml .htm .pdf
 649: AddIcon /icons/text.gif .txt
 650: AddIcon /icons/c.gif .c
 651: AddIcon /icons/p.gif .pl .py
 652: AddIcon /icons/f.gif .for
 653: AddIcon /icons/dvi.gif .dvi
 654: AddIcon /icons/uuencoded.gif .uu
 655: AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
 656: AddIcon /icons/tex.gif .tex
 657: AddIcon /icons/bomb.gif core
 659: AddIcon /icons/back.gif ..
 660: AddIcon /icons/hand.right.gif README
 661: AddIcon /icons/folder.gif ^^DIRECTORY^^
 662: AddIcon /icons/blank.gif ^^BLANKICON^^
 668: DefaultIcon /icons/unknown.gif
 686: ReadmeName README.html
 687: HeaderName HEADER.html
 693: IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
 733: AddLanguage ca .ca
 734: AddLanguage cs .cz .cs
 735: AddLanguage da .dk
 736: AddLanguage de .de
 737: AddLanguage el .el
 738: AddLanguage en .en
 739: AddLanguage eo .eo
 740: AddLanguage es .es
 741: AddLanguage et .et
 742: AddLanguage fr .fr
 743: AddLanguage he .he
 744: AddLanguage hr .hr
 745: AddLanguage it .it
 746: AddLanguage ja .ja
 747: AddLanguage ko .ko
 748: AddLanguage ltz .ltz
 749: AddLanguage nl .nl
 750: AddLanguage nn .nn
 751: AddLanguage no .no
 752: AddLanguage pl .po
 753: AddLanguage pt .pt
 754: AddLanguage pt-BR .pt-br
 755: AddLanguage ru .ru
 756: AddLanguage sv .sv
 757: AddLanguage zh-CN .zh-cn
 758: AddLanguage zh-TW .zh-tw
 767: LanguagePriority en ca cs da de el eo es et fr he hr it ja ko
ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
 774: ForceLanguagePriority Prefer Fallback
 783: AddDefaultCharset UTF-8
 803: AddType application/x-compress .Z
 804: AddType application/x-gzip .gz .tgz
 826: AddHandler type-map var
 834: AddType text/html .shtml
 835: AddOutputFilter INCLUDES .shtml
 873: Alias /error/ "/var/www/error/"
 877: <Directory "/var/www/error">
 878:   AllowOverride None
 879:   Options IncludesNoExec
 880:   AddOutputFilter Includes html
 881:   AddHandler type-map var
 882:   Order allow,deny
 883:   Allow from all
 884:   LanguagePriority en es de fr
 885:   ForceLanguagePriority Prefer Fallback
    : </Directory>
 913: BrowserMatch "Mozilla/2" nokeepalive
 914: BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-
response-1.0
 915: BrowserMatch "RealPlayer 4\.0" force-response-1.0
 916: BrowserMatch "Java/1\.0" force-response-1.0
 917: BrowserMatch "JDK/1\.0" force-response-1.0
 926: BrowserMatch "Microsoft Data Access Internet Publishing
Provider" redirect-carefully
 927: BrowserMatch "MS FrontPage" redirect-carefully
 928: BrowserMatch "^WebDrive" redirect-carefully
 929: BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
 930: BrowserMatch "^gnome-vfs/1.0" redirect-carefully
 931: BrowserMatch "^XML Spy" redirect-carefully
 932: BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
 939: <Location /server-status>
 940:   SetHandler server-status
 941:   Order deny,allow
 942:   Deny from all
 943:   Allow from .virginia.edu
    : </Location>
 951: <Location /server-info>
 952:   SetHandler server-info
 953:   Order deny,allow
 954:   Deny from all
 955:   Allow from .virginia.edu
    : </Location>

I'm wondering if the order of things matters in the configuration?

Thanks in advance for taking the time to look at this,
Jack
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@...
To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe@...
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: ****[Rails] Apache/Mongrel/Rails relative path problem

by JackK :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message




On Jul 24, 10:26 am, Craig White <craigwh...@...> wrote:

> On Thu, 2008-07-24 at 06:45 -0700, Jack wrote:
> > Folks,
>
> > I know this is probably a little off topic since I'm looking for
> > Apache/Mongrel help with a RoR application. But I can't seem to find
> > anything to shed some light and was hoping someone on here might be
> > able to help.
>
> > I've got a RoR app running via Mongrel under Apache/SSL on a
> > development server. The application is defined via Apache/SSL to be
> > running under a certain directory such thathttps://host.development.domain.edu/directory
> > works to get to the application and the application knows about this
> > directory with this line in in the development.rb file
>
> > ActionController::AbstractRequest.relative_url_root = '/dps'
>
> > I figure RoR/Mongrel understands because the initial page loads and
> > moving to another page loads. The problem is that none of the CSS an
> > Javascript files stored under the public directory are loading. The
> > HTML generated by the link_tag options are working to generate the
> > appropriate HTML:
>
> > <link type="text/css" rel="stylesheet" media="screen" href="/dps/
> > stylesheets/notice.css">
>
> > In looking at apache error logs, is seems that Apache is trying to
> > find these .css and .js files under the Apache web root directory
> > structure. What do I need to do so that Apache passes all requests
> > onto Mongrel?
>
> > Any hints or suggestions would be welcome,
>
> ----
> 1 - why not show us what your http configuration looks like...
>
> 2 - I've never used any designation for 'relative_url_root' in any of
> the environment files...not sure why you would do that
>
> 3 - the links to your stylesheets & javascripts are clearly being
> impacted by your 'relative_url_root' which seems clear is the reason
> that they are not being located
>
> Craig

Actually if I don't have the relative_url_root, I still have the same
problem with the css/js files. But in addition, the RoR application
controller fails to be able to route properly.

I should mention a couple of things regarding this RoR config/app
problem:
1. I'm trying to troubleshoot this because I'm one of the RoR
programmers for the app. The admin guy is just configuring the server
and not familiar with the app. (I'm familiar with some of the server
setup stuff from other work I do.)

2. This  application uses Pubcookie for authentication. This is one of
the reasons that we have used the relative_url_root, if I'm
remembering correctly. The other reason has to do with providing a
user friendly URL in the future when this app is demoed and used.
Lines 232 -257 are for Pubcookie so that when Apache hears back from
that server, it will pass along the user identified to the RoR
application.

Apache Server Information

Configuration:
In file: /etc/httpd/conf/httpd.conf
  44: ServerTokens OS
  63: PidFile run/httpd.pid
  68: Timeout 120
  74: KeepAlive Off
  81: MaxKeepAliveRequests 100
  87: KeepAliveTimeout 15
 101: StartServers 8
 102: MinSpareServers 5
 103: MaxSpareServers 20
 104: ServerLimit 256
 105: MaxClients 256
 106: MaxRequestsPerChild 4000
 134: Listen 80
In file: /etc/httpd/conf.d/BackupPC.conf
   1: <Directory /usr/share/BackupPC/sbin/>
   9:   order deny,allow
  10:   deny from all
  11:   allow from 127.0.0.1
  12:   AuthType Basic
  13:   AuthUserFile /etc/BackupPC/apache.users
  14:   AuthName "BackupPC
  16:   require valid-user
    : </Directory>
  21: Alias /BackupPC/images /usr/share/BackupPC/html/
  22: ScriptAlias /BackupPC /usr/share/BackupPC/sbin/BackupPC_Admin
In file: /etc/httpd/conf.d/manual.conf
   5: AliasMatch ^/manual(?:/(?:de|en|fr|ja|ko|ru))?(/.*)?$ "/var/www/
manual$1"
   7: <Directory "/var/www/manual">
   8:   Options Indexes
   9:   AllowOverride None
  10:   Order allow,deny
  11:   Allow from all
    : </Directory>
In file: /etc/httpd/conf.d/php.conf
  11: AddHandler php5-script .php
  12: AddType text/html .php
  18: DirectoryIndex index.php
In file: /etc/httpd/conf.d/pubcookie.conf
   3: PubcookieGrantingCertFile /usr/local/pubcookie/keys/
pubcookie_granting.cert
   4: PubcookieSessionCertFile /etc/pki/tls/certs/STAR_LIB_cert.pem
   5: PubcookieSessionKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
   6: PubcookieKeyDir /usr/local/pubcookie/keys
   7: PubcookieDomain .virginia.edu
   8: PubcookieAuthTypeNames Pubcookie NetBadge
   9: PubcookieLogin https://netbadge.virginia.edu/
  12: <Directory "/">
  13:   PubcookieInactiveExpire -1
    : </Directory>
In file: /etc/httpd/conf.d/python.conf
   9: <Directory "/var/www/manual/mod/mod_python">
  10:   <Files *.html>
  11:     SetHandler default-handler
    :   </Files>
    : </Directory>
In file: /etc/httpd/conf.d/squid.conf
   6: ScriptAlias /Squid/cgi-bin/cachemgr.cgi /usr/lib64/squid/
cachemgr.cgi
   9: <Location /Squid/cgi-bin/cachemgr.cgi>
  10:   order allow,deny
  11:   allow from localhost.localdomain
    : </Location>
In file: /etc/httpd/conf.d/ssl.conf
  18: Listen 443
  30: AddType application/x-x509-ca-cert .crt
  31: AddType application/x-pkcs7-crl .crl
  37: SSLPassPhraseDialog builtin
  43: SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
  44: SSLSessionCacheTimeout 300
  49: SSLMutex default
  61: SSLRandomSeed startup file:/dev/urandom 256
  62: SSLRandomSeed connect builtin
  74: SSLCryptoDevice builtin
  81: <VirtualHost _default_:443>
  84:   DocumentRoot "/var/www/html_ssl"
  89:   ErrorLog logs/ssl_error_log
  90:   TransferLog logs/ssl_access_log
  91:   LogLevel warn
  95:   SSLEngine on
 100:   SSLProtocol all -SSLv2
 105:   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:
+LOW
 112:   SSLCertificateFile /etc/pki/tls/certs/STAR_LIB_cert.pem
 119:   SSLCertificateKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
 187:   <Files ~ "\.(cgi|shtml|phtml|php3?)$">
 188:     SSLOptions +StdEnvVars
    :   </Files>
 190:   <Directory "/var/www/cgi-bin">
 191:     SSLOptions +StdEnvVars
    :   </Directory>
 220:   SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-
shutdown downgrade-1.0 force-response-1.0
 226:   CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %
{SSL_CIPHER}x \"%r\" %b"
 229:   ProxyRequests Off
 230:   ProxyPreserveHost On
 232:   <LocationMatch ^/dps/request/uva|^/dps/admin>
 233:     RequestHeader set X_FORWARDED_PROTO 'https'
 235:     SetEnv force-proxy-request-1.0 1
 236:     SetEnv proxy-nokeepalive 1
 237:     AuthType NetBadge
 238:     require valid-user
 239:     PubcookieAppId dps
 240:     ProxyPassReverse http://127.0.0.1:9050
 241:     RewriteEngine On
 242:     RewriteCond %{REQUEST_FILENAME} !-f
 243:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
 244:     RewriteRule /dps/(.*) http://127.0.0.1:9050/$1 [E=RU:%
{REMOTE_USER},P,QSA,L]
 245:     RequestHeader add REMOTE_USER %{RU}e
    :   </LocationMatch>
 247:   <LocationMatch ^/dps>
 248:     RequestHeader set X_FORWARDED_PROTO 'https'
 250:     SetEnv force-proxy-request-1.0 1
 251:     SetEnv proxy-nokeepalive 1
 252:     ProxyPassReverse http://127.0.0.1:9050
 253:     RewriteEngine On
 254:     RewriteCond %{REQUEST_FILENAME} !-f
 255:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
 256:     RewriteRule /dps/(.*) http://127.0.0.1:9050/$1 [E=RU:%
{REMOTE_USER},P,QSA,L]
 257:     RequestHeader add REMOTE_USER %{RU}e
    :   </LocationMatch>
    : </VirtualHost>
In file: /etc/httpd/conf.d/webalizer.conf
   6: Alias /usage /var/www/usage
   8: <Location /usage>
   9:   Order deny,allow
  10:   Deny from all
  11:   Allow from 127.0.0.1
  12:   Allow from ::1
    : </Location>
In file: /etc/httpd/conf.d/welcome.conf
   7: <LocationMatch "^/+$">
   8:   Options -Indexes
   9:   ErrorDocument 403 /error/noindex.html
    : </LocationMatch>
In file: /etc/httpd/conf/httpd.conf
 230: User apache
 231: Group apache
 250: ServerAdmin root@localhost
 273: UseCanonicalName Off
 280: DocumentRoot "/var/www/html"
 290: <Directory />
 291:   Options FollowSymLinks
 292:   AllowOverride None
    : </Directory>
 305: <Directory "/var/www/html">
 319:   Options Indexes FollowSymLinks
 326:   AllowOverride None
 331:   Order allow,deny
 332:   Allow from all
    : </Directory>
 340: <Directory "/var/www/html_ssl">
 355:   Options All
 363:   AllowOverride AuthConfig
 368:   Order allow,deny
 369:   Allow from all
    : </Directory>
 391: UserDir disable
 427: DirectoryIndex index.html index.html.var
 434: AccessFileName .htaccess
 440: <Files ~ "^\.ht">
 441:   Order allow,deny
 442:   Deny from all
    : </Files>
 449: TypesConfig /etc/mime.types
 460: DefaultType text/plain
 469: MIMEMagicFile conf/magic
 480: HostnameLookups Off
 508: ErrorLog logs/error_log
 515: LogLevel warn
 521: LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-
Agent}i\"" combined
 522: LogFormat "%h %l %u %t \"%r\" %>s %b" common
 523: LogFormat "%{Referer}i -> %U" referer
 524: LogFormat "%{User-agent}i" agent
 550: CustomLog logs/access_log combined
 560: ServerSignature On
 575: Alias /icons/ "/var/www/icons/"
 577: <Directory "/var/www/icons">
 578:   Options Indexes MultiViews FollowSymLinks
 579:   AllowOverride None
 580:   Order allow,deny
 581:   Allow from all
    : </Directory>
 589: DAVLockDB /var/lib/dav/lockdb
 600: ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
 606: <Directory "/var/www/cgi-bin">
 607:   AllowOverride None
 608:   Options None
 609:   Order allow,deny
 610:   Allow from all
    : </Directory>
 628: IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable
 635: AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
 637: AddIconByType (TXT,/icons/text.gif) text/*
 638: AddIconByType (IMG,/icons/image2.gif) image/*
 639: AddIconByType (SND,/icons/sound2.gif) audio/*
 640: AddIconByType (VID,/icons/movie.gif) video/*
 642: AddIcon /icons/binary.gif .bin .exe
 643: AddIcon /icons/binhex.gif .hqx
 644: AddIcon /icons/tar.gif .tar
 645: AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
 646: AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
 647: AddIcon /icons/a.gif .ps .ai .eps
 648: AddIcon /icons/layout.gif .html .shtml .htm .pdf
 649: AddIcon /icons/text.gif .txt
 650: AddIcon /icons/c.gif .c
 651: AddIcon /icons/p.gif .pl .py
 652: AddIcon /icons/f.gif .for
 653: AddIcon /icons/dvi.gif .dvi
 654: AddIcon /icons/uuencoded.gif .uu
 655: AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
 656: AddIcon /icons/tex.gif .tex
 657: AddIcon /icons/bomb.gif core
 659: AddIcon /icons/back.gif ..
 660: AddIcon /icons/hand.right.gif README
 661: AddIcon /icons/folder.gif ^^DIRECTORY^^
 662: AddIcon /icons/blank.gif ^^BLANKICON^^
 668: DefaultIcon /icons/unknown.gif
 686: ReadmeName README.html
 687: HeaderName HEADER.html
 693: IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
 733: AddLanguage ca .ca
 734: AddLanguage cs .cz .cs
 735: AddLanguage da .dk
 736: AddLanguage de .de
 737: AddLanguage el .el
 738: AddLanguage en .en
 739: AddLanguage eo .eo
 740: AddLanguage es .es
 741: AddLanguage et .et
 742: AddLanguage fr .fr
 743: AddLanguage he .he
 744: AddLanguage hr .hr
 745: AddLanguage it .it
 746: AddLanguage ja .ja
 747: AddLanguage ko .ko
 748: AddLanguage ltz .ltz
 749: AddLanguage nl .nl
 750: AddLanguage nn .nn
 751: AddLanguage no .no
 752: AddLanguage pl .po
 753: AddLanguage pt .pt
 754: AddLanguage pt-BR .pt-br
 755: AddLanguage ru .ru
 756: AddLanguage sv .sv
 757: AddLanguage zh-CN .zh-cn
 758: AddLanguage zh-TW .zh-tw
 767: LanguagePriority en ca cs da de el eo es et fr he hr it ja ko
ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW
 774: ForceLanguagePriority Prefer Fallback
 783: AddDefaultCharset UTF-8
 803: AddType application/x-compress .Z
 804: AddType application/x-gzip .gz .tgz
 826: AddHandler type-map var
 834: AddType text/html .shtml
 835: AddOutputFilter INCLUDES .shtml
 873: Alias /error/ "/var/www/error/"
 877: <Directory "/var/www/error">
 878:   AllowOverride None
 879:   Options IncludesNoExec
 880:   AddOutputFilter Includes html
 881:   AddHandler type-map var
 882:   Order allow,deny
 883:   Allow from all
 884:   LanguagePriority en es de fr
 885:   ForceLanguagePriority Prefer Fallback
    : </Directory>
 913: BrowserMatch "Mozilla/2" nokeepalive
 914: BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-
response-1.0
 915: BrowserMatch "RealPlayer 4\.0" force-response-1.0
 916: BrowserMatch "Java/1\.0" force-response-1.0
 917: BrowserMatch "JDK/1\.0" force-response-1.0
 926: BrowserMatch "Microsoft Data Access Internet Publishing
Provider" redirect-carefully
 927: BrowserMatch "MS FrontPage" redirect-carefully
 928: BrowserMatch "^WebDrive" redirect-carefully
 929: BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
 930: BrowserMatch "^gnome-vfs/1.0" redirect-carefully
 931: BrowserMatch "^XML Spy" redirect-carefully
 932: BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully
 939: <Location /server-status>
 940:   SetHandler server-status
 941:   Order deny,allow
 942:   Deny from all
 943:   Allow from .virginia.edu
    : </Location>
 951: <Location /server-info>
 952:   SetHandler server-info
 953:   Order deny,allow
 954:   Deny from all
 955:   Allow from .virginia.edu
    : </Location>

Thanks in advance for taking a look at this.

Jack
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@...
To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe@...
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: ****[Rails] Apache/Mongrel/Rails relative path problem

by JackK :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message




On Jul 24, 2:14 pm, Jack <jl...@...> wrote:

> On Jul 24, 10:26 am, Craig White <craigwh...@...> wrote:
>
>
>
> > On Thu, 2008-07-24 at 06:45 -0700, Jack wrote:
> > > Folks,
>
> > > I know this is probably a little off topic since I'm looking for
> > > Apache/Mongrel help with a RoR application. But I can't seem to find
> > > anything to shed some light and was hoping someone on here might be
> > > able to help.
>
> > > I've got a RoR app running via Mongrel under Apache/SSL on a
> > > development server. The application is defined via Apache/SSL to be
> > > running under a certain directory such thathttps://host.development.domain.edu/directory
> > > works to get to the application and the application knows about this
> > > directory with this line in in the development.rb file
>
> > > ActionController::AbstractRequest.relative_url_root = '/dps'
>
> > > I figure RoR/Mongrel understands because the initial page loads and
> > > moving to another page loads. The problem is that none of the CSS an
> > > Javascript files stored under the public directory are loading. The
> > > HTML generated by the link_tag options are working to generate the
> > > appropriate HTML:
>
> > > <link type="text/css" rel="stylesheet" media="screen" href="/dps/
> > > stylesheets/notice.css">
>
> > > In looking at apache error logs, is seems that Apache is trying to
> > > find these .css and .js files under the Apache web root directory
> > > structure. What do I need to do so that Apache passes all requests
> > > onto Mongrel?
>
> > > Any hints or suggestions would be welcome,
>
> > ----
> > 1 - why not show us what your http configuration looks like...
>
> > 2 - I've never used any designation for 'relative_url_root' in any of
> > the environment files...not sure why you would do that
>
> > 3 - the links to your stylesheets & javascripts are clearly being
> > impacted by your 'relative_url_root' which seems clear is the reason
> > that they are not being located
>
> > Craig
>
> Actually if I don't have the relative_url_root, I still have the same
> problem with the css/js files. But in addition, the RoR application
> controller fails to be able to route properly.
>
> I should mention a couple of things regarding this RoR config/app
> problem:
> 1. I'm trying to troubleshoot this because I'm one of the RoR
> programmers for the app. The admin guy is just configuring the server
> and not familiar with the app. (I'm familiar with some of the server
> setup stuff from other work I do.)
>
> 2. This  application uses Pubcookie for authentication. This is one of
> the reasons that we have used the relative_url_root, if I'm
> remembering correctly. The other reason has to do with providing a
> user friendly URL in the future when this app is demoed and used.
> Lines 232 -257 are for Pubcookie so that when Apache hears back from
> that server, it will pass along the user identified to the RoR
> application.
>
> Apache Server Information
>
> Configuration:
> In file: /etc/httpd/conf/httpd.conf
>   44: ServerTokens OS
>   63: PidFile run/httpd.pid
>   68: Timeout 120
>   74: KeepAlive Off
>   81: MaxKeepAliveRequests 100
>   87: KeepAliveTimeout 15
>  101: StartServers 8
>  102: MinSpareServers 5
>  103: MaxSpareServers 20
>  104: ServerLimit 256
>  105: MaxClients 256
>  106: MaxRequestsPerChild 4000
>  134: Listen 80
> In file: /etc/httpd/conf.d/BackupPC.conf
>    1: <Directory /usr/share/BackupPC/sbin/>
>    9:   order deny,allow
>   10:   deny from all
>   11:   allow from 127.0.0.1
>   12:   AuthType Basic
>   13:   AuthUserFile /etc/BackupPC/apache.users
>   14:   AuthName "BackupPC
>   16:   require valid-user
>     : </Directory>
>   21: Alias /BackupPC/images /usr/share/BackupPC/html/
>   22: ScriptAlias /BackupPC /usr/share/BackupPC/sbin/BackupPC_Admin
> In file: /etc/httpd/conf.d/manual.conf
>    5: AliasMatch ^/manual(?:/(?:de|en|fr|ja|ko|ru))?(/.*)?$ "/var/www/
> manual$1"
>    7: <Directory "/var/www/manual">
>    8:   Options Indexes
>    9:   AllowOverride None
>   10:   Order allow,deny
>   11:   Allow from all
>     : </Directory>
> In file: /etc/httpd/conf.d/php.conf
>   11: AddHandler php5-script .php
>   12: AddType text/html .php
>   18: DirectoryIndex index.php
> In file: /etc/httpd/conf.d/pubcookie.conf
>    3: PubcookieGrantingCertFile /usr/local/pubcookie/keys/
> pubcookie_granting.cert
>    4: PubcookieSessionCertFile /etc/pki/tls/certs/STAR_LIB_cert.pem
>    5: PubcookieSessionKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
>    6: PubcookieKeyDir /usr/local/pubcookie/keys
>    7: PubcookieDomain .virginia.edu
>    8: PubcookieAuthTypeNames Pubcookie NetBadge
>    9: PubcookieLoginhttps://netbadge.virginia.edu/
>   12: <Directory "/">
>   13:   PubcookieInactiveExpire -1
>     : </Directory>
> In file: /etc/httpd/conf.d/python.conf
>    9: <Directory "/var/www/manual/mod/mod_python">
>   10:   <Files *.html>
>   11:     SetHandler default-handler
>     :   </Files>
>     : </Directory>
> In file: /etc/httpd/conf.d/squid.conf
>    6: ScriptAlias /Squid/cgi-bin/cachemgr.cgi /usr/lib64/squid/
> cachemgr.cgi
>    9: <Location /Squid/cgi-bin/cachemgr.cgi>
>   10:   order allow,deny
>   11:   allow from localhost.localdomain
>     : </Location>
> In file: /etc/httpd/conf.d/ssl.conf
>   18: Listen 443
>   30: AddType application/x-x509-ca-cert .crt
>   31: AddType application/x-pkcs7-crl .crl
>   37: SSLPassPhraseDialog builtin
>   43: SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
>   44: SSLSessionCacheTimeout 300
>   49: SSLMutex default
>   61: SSLRandomSeed startup file:/dev/urandom 256
>   62: SSLRandomSeed connect builtin
>   74: SSLCryptoDevice builtin
>   81: <VirtualHost _default_:443>
>   84:   DocumentRoot "/var/www/html_ssl"
>   89:   ErrorLog logs/ssl_error_log
>   90:   TransferLog logs/ssl_access_log
>   91:   LogLevel warn
>   95:   SSLEngine on
>  100:   SSLProtocol all -SSLv2
>  105:   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:
> +LOW
>  112:   SSLCertificateFile /etc/pki/tls/certs/STAR_LIB_cert.pem
>  119:   SSLCertificateKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
>  187:   <Files ~ "\.(cgi|shtml|phtml|php3?)$">
>  188:     SSLOptions +StdEnvVars
>     :   </Files>
>  190:   <Directory "/var/www/cgi-bin">
>  191:     SSLOptions +StdEnvVars
>     :   </Directory>
>  220:   SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-
> shutdown downgrade-1.0 force-response-1.0
>  226:   CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %
> {SSL_CIPHER}x \"%r\" %b"
>  229:   ProxyRequests Off
>  230:   ProxyPreserveHost On
>  232:   <LocationMatch ^/dps/request/uva|^/dps/admin>
>  233:     RequestHeader set X_FORWARDED_PROTO 'https'
>  235:     SetEnv force-proxy-request-1.0 1
>  236:     SetEnv proxy-nokeepalive 1
>  237:     AuthType NetBadge
>  238:     require valid-user
>  239:     PubcookieAppId dps
>  240:     ProxyPassReversehttp://127.0.0.1:9050
>  241:     RewriteEngine On
>  242:     RewriteCond %{REQUEST_FILENAME} !-f
>  243:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
>  244:     RewriteRule /dps/(.*)http://127.0.0.1:9050/$1[E=RU:%
> {REMOTE_USER},P,QSA,L]
>  245:     RequestHeader add REMOTE_USER %{RU}e
>     :   </LocationMatch>
>  247:   <LocationMatch ^/dps>
>  248:     RequestHeader set X_FORWARDED_PROTO 'https'
>  250:     SetEnv force-proxy-request-1.0 1
>  251:     SetEnv proxy-nokeepalive 1
>  252:     ProxyPassReversehttp://127.0.0.1:9050
>  253:     RewriteEngine On
>  254:     RewriteCond %{REQUEST_FILENAME} !-f
>  255:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
>  256:     RewriteRule /dps/(.*)http://127.0.0.1:9050/$1[E=RU:%
> {REMOTE_USER},P,QSA,L]
>  257:     RequestHeader add REMOTE_USER %{RU}e
>     :   </LocationMatch>
>     : </VirtualHost>
> In file: /etc/httpd/conf.d/webalizer.conf
>    6: Alias /usage /var/www/usage
>    8: <Location /usage>
>    9:   Order deny,allow
>   10:   Deny from all
>   11:   Allow from 127.0.0.1
>   12:   Allow from ::1
>     : </Location>
> In file: /etc/httpd/conf.d/welcome.conf
>    7: <LocationMatch "^/+$">
>    8:   Options -Indexes
>    9:   ErrorDocument 403 /error/noindex.html
>     : </LocationMatch>
> In file: /etc/httpd/conf/httpd.conf
>  230: User apache
>  231: Group apache
>  250: ServerAdmin root@localhost
>  273: UseCanonicalName Off
>  280: DocumentRoot "/var/www/html"
>  290: <Directory />
>  291:   Options FollowSymLinks
>  292:   AllowOverride None
>     : </Directory>
>  305: <Directory "/var/www/html">
>  319:   Options Indexes FollowSymLinks
>  326:   AllowOverride None
>  331:   Order allow,deny
>  332:   Allow from all
>     : </Directory>
>  340: <Directory "/var/www/html_ssl">
>  355:   Options All
>  363:   AllowOverride AuthConfig
>  368:   Order allow,deny
>  369:   Allow from all
>     : </Directory>
>  391: UserDir disable
>  427: DirectoryIndex index.html index.html.var
>  434: AccessFileName .htaccess
>  440: <Files ~ "^\.ht">
>  441:   Order allow,deny
>  442:   Deny from all
>     : </Files>
>  449: TypesConfig /etc/mime.types
>  460: DefaultType text/plain
>  469: MIMEMagicFile conf/magic
>  480: HostnameLookups Off
>  508: ErrorLog logs/error_log
>  515: LogLevel warn
>  521: LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-
> Agent}i\"" combined
>  522: LogFormat "%h %l %u %t \"%r\" %>s %b" common
>  523: LogFormat "%{Referer}i -> %U" referer
>  524: LogFormat "%{User-agent}i" agent
>  550: CustomLog logs/access_log combined
>  560: ServerSignature On
>  575: Alias /icons/ "/var/www/icons/"
>  577: <Directory "/var/www/icons">
>  578:   Options Indexes MultiViews FollowSymLinks
>  579:   AllowOverride None
>  580:   Order allow,deny
>  581:   Allow from all
>     : </Directory>
>  589: DAVLockDB /var/lib/dav/lockdb
>  600: ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
>  606: <Directory "/var/www/cgi-bin">
>  607:   AllowOverride None
>  608:   Options None
>  609:   Order allow,deny
>  610:   Allow from all
>     : </Directory>
>  628: IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable
>  635: AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
>  637: AddIconByType (TXT,/icons/text.gif) text/*
>  638: AddIconByType (IMG,/icons/image2.gif) image/*
>  639: AddIconByType
> ...
>
> read more »

Just in case this would be helpful in resolving the problem, here is
the mongrel configuration file being used -

:config_script:
:environment: development
:host: 0.0.0.0
:config_file:
:num_processors: 1024
:group:
:docroot: public
:port: "9050"
:prefix:
:timeout: 0
:debug: false
:mime_map:
:cwd: /projects/tracksys
:daemon: true
:user:
:log_file: log/mongrel.log
:includes:
- mongrel
:pid_file: tmp/pids/mongrel.pid


I tried setting prefix to dps but that seemed to just add another dps
to the url so it looked like this

https://host.domain.edu/dps/dps/request

which caused other problems.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@...
To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe@...
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: ****[Rails] Re: ****[Rails] Apache/Mongrel/Rails relative path problem

by Craig White-6 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


On Thu, 2008-07-24 at 11:19 -0700, Jack wrote:

>
>
> On Jul 24, 2:14 pm, Jack <jl...@...> wrote:
> > On Jul 24, 10:26 am, Craig White <craigwh...@...> wrote:
> >
> >
> >
> > > On Thu, 2008-07-24 at 06:45 -0700, Jack wrote:
> > > > Folks,
> >
> > > > I know this is probably a little off topic since I'm looking for
> > > > Apache/Mongrel help with a RoR application. But I can't seem to find
> > > > anything to shed some light and was hoping someone on here might be
> > > > able to help.
> >
> > > > I've got a RoR app running via Mongrel under Apache/SSL on a
> > > > development server. The application is defined via Apache/SSL to be
> > > > running under a certain directory such thathttps://host.development.domain.edu/directory
> > > > works to get to the application and the application knows about this
> > > > directory with this line in in the development.rb file
> >
> > > > ActionController::AbstractRequest.relative_url_root = '/dps'
> >
> > > > I figure RoR/Mongrel understands because the initial page loads and
> > > > moving to another page loads. The problem is that none of the CSS an
> > > > Javascript files stored under the public directory are loading. The
> > > > HTML generated by the link_tag options are working to generate the
> > > > appropriate HTML:
> >
> > > > <link type="text/css" rel="stylesheet" media="screen" href="/dps/
> > > > stylesheets/notice.css">
> >
> > > > In looking at apache error logs, is seems that Apache is trying to
> > > > find these .css and .js files under the Apache web root directory
> > > > structure. What do I need to do so that Apache passes all requests
> > > > onto Mongrel?
> >
> > > > Any hints or suggestions would be welcome,
> >
> > > ----
> > > 1 - why not show us what your http configuration looks like...
> >
> > > 2 - I've never used any designation for 'relative_url_root' in any of
> > > the environment files...not sure why you would do that
> >
> > > 3 - the links to your stylesheets & javascripts are clearly being
> > > impacted by your 'relative_url_root' which seems clear is the reason
> > > that they are not being located
> >
> > > Craig
> >
> > Actually if I don't have the relative_url_root, I still have the same
> > problem with the css/js files. But in addition, the RoR application
> > controller fails to be able to route properly.
> >
> > I should mention a couple of things regarding this RoR config/app
> > problem:
> > 1. I'm trying to troubleshoot this because I'm one of the RoR
> > programmers for the app. The admin guy is just configuring the server
> > and not familiar with the app. (I'm familiar with some of the server
> > setup stuff from other work I do.)
> >
> > 2. This  application uses Pubcookie for authentication. This is one of
> > the reasons that we have used the relative_url_root, if I'm
> > remembering correctly. The other reason has to do with providing a
> > user friendly URL in the future when this app is demoed and used.
> > Lines 232 -257 are for Pubcookie so that when Apache hears back from
> > that server, it will pass along the user identified to the RoR
> > application.
> >
> > Apache Server Information
> >
> > Configuration:
> > In file: /etc/httpd/conf/httpd.conf
> >   44: ServerTokens OS
> >   63: PidFile run/httpd.pid
> >   68: Timeout 120
> >   74: KeepAlive Off
> >   81: MaxKeepAliveRequests 100
> >   87: KeepAliveTimeout 15
> >  101: StartServers 8
> >  102: MinSpareServers 5
> >  103: MaxSpareServers 20
> >  104: ServerLimit 256
> >  105: MaxClients 256
> >  106: MaxRequestsPerChild 4000
> >  134: Listen 80
> > In file: /etc/httpd/conf.d/BackupPC.conf
> >    1: <Directory /usr/share/BackupPC/sbin/>
> >    9:   order deny,allow
> >   10:   deny from all
> >   11:   allow from 127.0.0.1
> >   12:   AuthType Basic
> >   13:   AuthUserFile /etc/BackupPC/apache.users
> >   14:   AuthName "BackupPC
> >   16:   require valid-user
> >     : </Directory>
> >   21: Alias /BackupPC/images /usr/share/BackupPC/html/
> >   22: ScriptAlias /BackupPC /usr/share/BackupPC/sbin/BackupPC_Admin
> > In file: /etc/httpd/conf.d/manual.conf
> >    5: AliasMatch ^/manual(?:/(?:de|en|fr|ja|ko|ru))?(/.*)?$ "/var/www/
> > manual$1"
> >    7: <Directory "/var/www/manual">
> >    8:   Options Indexes
> >    9:   AllowOverride None
> >   10:   Order allow,deny
> >   11:   Allow from all
> >     : </Directory>
> > In file: /etc/httpd/conf.d/php.conf
> >   11: AddHandler php5-script .php
> >   12: AddType text/html .php
> >   18: DirectoryIndex index.php
> > In file: /etc/httpd/conf.d/pubcookie.conf
> >    3: PubcookieGrantingCertFile /usr/local/pubcookie/keys/
> > pubcookie_granting.cert
> >    4: PubcookieSessionCertFile /etc/pki/tls/certs/STAR_LIB_cert.pem
> >    5: PubcookieSessionKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
> >    6: PubcookieKeyDir /usr/local/pubcookie/keys
> >    7: PubcookieDomain .virginia.edu
> >    8: PubcookieAuthTypeNames Pubcookie NetBadge
> >    9: PubcookieLoginhttps://netbadge.virginia.edu/
> >   12: <Directory "/">
> >   13:   PubcookieInactiveExpire -1
> >     : </Directory>
> > In file: /etc/httpd/conf.d/python.conf
> >    9: <Directory "/var/www/manual/mod/mod_python">
> >   10:   <Files *.html>
> >   11:     SetHandler default-handler
> >     :   </Files>
> >     : </Directory>
> > In file: /etc/httpd/conf.d/squid.conf
> >    6: ScriptAlias /Squid/cgi-bin/cachemgr.cgi /usr/lib64/squid/
> > cachemgr.cgi
> >    9: <Location /Squid/cgi-bin/cachemgr.cgi>
> >   10:   order allow,deny
> >   11:   allow from localhost.localdomain
> >     : </Location>
> > In file: /etc/httpd/conf.d/ssl.conf
> >   18: Listen 443
> >   30: AddType application/x-x509-ca-cert .crt
> >   31: AddType application/x-pkcs7-crl .crl
> >   37: SSLPassPhraseDialog builtin
> >   43: SSLSessionCache shmcb:/var/cache/mod_ssl/scache(512000)
> >   44: SSLSessionCacheTimeout 300
> >   49: SSLMutex default
> >   61: SSLRandomSeed startup file:/dev/urandom 256
> >   62: SSLRandomSeed connect builtin
> >   74: SSLCryptoDevice builtin
> >   81: <VirtualHost _default_:443>
> >   84:   DocumentRoot "/var/www/html_ssl"
> >   89:   ErrorLog logs/ssl_error_log
> >   90:   TransferLog logs/ssl_access_log
> >   91:   LogLevel warn
> >   95:   SSLEngine on
> >  100:   SSLProtocol all -SSLv2
> >  105:   SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:
> > +LOW
> >  112:   SSLCertificateFile /etc/pki/tls/certs/STAR_LIB_cert.pem
> >  119:   SSLCertificateKeyFile /etc/pki/tls/private/STAR_LIB_key.pem
> >  187:   <Files ~ "\.(cgi|shtml|phtml|php3?)$">
> >  188:     SSLOptions +StdEnvVars
> >     :   </Files>
> >  190:   <Directory "/var/www/cgi-bin">
> >  191:     SSLOptions +StdEnvVars
> >     :   </Directory>
> >  220:   SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-
> > shutdown downgrade-1.0 force-response-1.0
> >  226:   CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %
> > {SSL_CIPHER}x \"%r\" %b"
> >  229:   ProxyRequests Off
> >  230:   ProxyPreserveHost On
> >  232:   <LocationMatch ^/dps/request/uva|^/dps/admin>
> >  233:     RequestHeader set X_FORWARDED_PROTO 'https'
> >  235:     SetEnv force-proxy-request-1.0 1
> >  236:     SetEnv proxy-nokeepalive 1
> >  237:     AuthType NetBadge
> >  238:     require valid-user
> >  239:     PubcookieAppId dps
> >  240:     ProxyPassReversehttp://127.0.0.1:9050
> >  241:     RewriteEngine On
> >  242:     RewriteCond %{REQUEST_FILENAME} !-f
> >  243:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
> >  244:     RewriteRule /dps/(.*)http://127.0.0.1:9050/$1[E=RU:%
> > {REMOTE_USER},P,QSA,L]
> >  245:     RequestHeader add REMOTE_USER %{RU}e
> >     :   </LocationMatch>
> >  247:   <LocationMatch ^/dps>
> >  248:     RequestHeader set X_FORWARDED_PROTO 'https'
> >  250:     SetEnv force-proxy-request-1.0 1
> >  251:     SetEnv proxy-nokeepalive 1
> >  252:     ProxyPassReversehttp://127.0.0.1:9050
> >  253:     RewriteEngine On
> >  254:     RewriteCond %{REQUEST_FILENAME} !-f
> >  255:     RewriteCond %{REQUEST_URI} !\.(js|ico|gif|jpg|png|css)$
> >  256:     RewriteRule /dps/(.*)http://127.0.0.1:9050/$1[E=RU:%
> > {REMOTE_USER},P,QSA,L]
> >  257:     RequestHeader add REMOTE_USER %{RU}e
> >     :   </LocationMatch>
> >     : </VirtualHost>
> > In file: /etc/httpd/conf.d/webalizer.conf
> >    6: Alias /usage /var/www/usage
> >    8: <Location /usage>
> >    9:   Order deny,allow
> >   10:   Deny from all
> >   11:   Allow from 127.0.0.1
> >   12:   Allow from ::1
> >     : </Location>
> > In file: /etc/httpd/conf.d/welcome.conf
> >    7: <LocationMatch "^/+$">
> >    8:   Options -Indexes
> >    9:   ErrorDocument 403 /error/noindex.html
> >     : </LocationMatch>
> > In file: /etc/httpd/conf/httpd.conf
> >  230: User apache
> >  231: Group apache
> >  250: ServerAdmin root@localhost
> >  273: UseCanonicalName Off
> >  280: DocumentRoot "/var/www/html"
> >  290: <Directory />
> >  291:   Options FollowSymLinks
> >  292:   AllowOverride None
> >     : </Directory>
> >  305: <Directory "/var/www/html">
> >  319:   Options Indexes FollowSymLinks
> >  326:   AllowOverride None
> >  331:   Order allow,deny
> >  332:   Allow from all
> >     : </Directory>
> >  340: <Directory "/var/www/html_ssl">
> >  355:   Options All
> >  363:   AllowOverride AuthConfig
> >  368:   Order allow,deny
> >  369:   Allow from all
> >     : </Directory>
> >  391: UserDir disable
> >  427: DirectoryIndex index.html index.html.var
> >  434: AccessFileName .htaccess
> >  440: <Files ~ "^\.ht">
> >  441:   Order allow,deny
> >  442:   Deny from all
> >     : </Files>
> >  449: TypesConfig /etc/mime.types
> >  460: DefaultType text/plain
> >  469: MIMEMagicFile conf/magic
> >  480: HostnameLookups Off
> >  508: ErrorLog logs/error_log
> >  515: LogLevel warn
> >  521: LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-
> > Agent}i\"" combined
> >  522: LogFormat "%h %l %u %t \"%r\" %>s %b" common
> >  523: LogFormat "%{Referer}i -> %U" referer
> >  524: LogFormat "%{User-agent}i" agent
> >  550: CustomLog logs/access_log combined
> >  560: ServerSignature On
> >  575: Alias /icons/ "/var/www/icons/"
> >  577: <Directory "/var/www/icons">
> >  578:   Options Indexes MultiViews FollowSymLinks
> >  579:   AllowOverride None
> >  580:   Order allow,deny
> >  581:   Allow from all
> >     : </Directory>
> >  589: DAVLockDB /var/lib/dav/lockdb
> >  600: ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"
> >  606: <Directory "/var/www/cgi-bin">
> >  607:   AllowOverride None
> >  608:   Options None
> >  609:   Order allow,deny
> >  610:   Allow from all
> >     : </Directory>
> >  628: IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable
> >  635: AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip
> >  637: AddIconByType (TXT,/icons/text.gif) text/*
> >  638: AddIconByType (IMG,/icons/image2.gif) image/*
> >  639: AddIconByType
> > ...
> >
> > read more »
>
> Just in case this would be helpful in resolving the problem, here is
> the mongrel configuration file being used -
>
> :config_script:
> :environment: development
> :host: 0.0.0.0
> :config_file:
> :num_processors: 1024
> :group:
> :docroot: public
> :port: "9050"
> :prefix:
> :timeout: 0
> :debug: false
> :mime_map:
> :cwd: /projects/tracksys
> :daemon: true
> :user:
> :log_file: log/mongrel.log
> :includes:
> - mongrel
> :pid_file: tmp/pids/mongrel.pid
>
>
> I tried setting prefix to dps but that seemed to just add another dps
> to the url so it looked like this
>
> https://host.domain.edu/dps/dps/request
>
> which caused other problems.
----
ok - gotcha

First off...isolate

Try using a web browser directly to your mongrel instance...

http://host.domain.edu:9050

and make sure it all works so that your only issue is apache proxy.

Then I would suggest that you get on the mongrel mail list to help with
your proxy setup (after verifying that everything works without proxy)
to get help with the apache configuration (and the mongrel
configuration).

num_processors: 1024 can't possibly be right

I think ultimately you want to run mongrel_cluster and run 3-5 mongrels
and use proxy_balancer and not the setup that you are running with
ProxyPass but that's my guess.

Craig


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@...
To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe@...
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: ****[Rails] Re: ****[Rails] Apache/Mongrel/Rails relative path problem

by JackK :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


> First off...isolate
>
> Try using a web browser directly to your mongrel instance...
>
> http://host.domain.edu:9050
>
> and make sure it all works so that your only issue is apache proxy.
>
> Then I would suggest that you get on the mongrel mail list to help with
> your proxy setup (after verifying that everything works without proxy)
> to get help with the apache configuration (and the mongrel
> configuration).
>
> num_processors: 1024 can't possibly be right
>
> I think ultimately you want to run mongrel_cluster and run 3-5 mongrels
> and use proxy_balancer and not the setup that you are running with
> ProxyPass but that's my guess.
>
> Craig

Thanks, Craig, for the advice. I've already tried the first and have
troubles getting the server to respond. But I don't know if that has
to do with Pubcookie trying to resolve the URL and not having it
match. But I'll go through all of these in the order you mentioned.

FYI, I did not specify the num_processors. When I ran mongrel_rails to
generate a config file, I only set the flags I understood and wanted a
specific value for. So that 1024 is the default if you don't specify
anything.

Jack
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@...
To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe@...
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---


Re: ****[Rails] Re: ****[Rails] Re: ****[Rails] Apache/Mongrel/Rails relative path problem

by Craig White-6 :: Rate this Message: