Forum: Ruby on Rails Apache mod_proxy mongrel_cluster and subversion http

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
Jonathan Kinney (Guest)
on 2007-05-22 02:28
(Received via mailing list)
Hello everyone,

I have a site setup where I need to have svn access and my rails app
accessible on the same IP. Right now I can only seem to have one or the
other.

This is a production environment... I'm running Ubuntu 7.04 server with
apache2 and mod_proxy serving rails requests to 2 mongrel servers via
mongrel_cluster and it works great to serve the app when I use this
httpd.conf file (I modified domain specific info to be generic) Also the
basic authentication is just because this is 80% developed app running
on a
test production server. I didn't want everyone and anyone in the company
I'm
developing this for to have access just by hitting the url. At least
with
basic auth it would take some effort to see the site without a username
and
password which no one involved in this project would care to do. So for
all
intent and purpose...ignore the basic auth! I know it sucks!

However if the below httpd.conf file is in place then all the sudden my
subversion repository is no longer accessable via dav_svn at
http://subdomain.domain.com/svn/appname/trunk

Is there a way to have both dav_svn http subversion access to my
repository
and also serve the rails application? Please see httpd.conf file below.

Thanks!

<VirtualHost *:80>
  ServerName subdomain.domain.com

  DocumentRoot /var/www/appname/current/public

  <Directory "/var/www/appname/current/public">
    AuthType Basic
    AuthName "Authentication Required to access site"
    AuthUserFile "/home/administrator/.htpasswd"
    Require valid-user

    Options FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
  </Directory>

  <Proxy balancer://mongrel_cluster>
    BalancerMember http://127.0.0.1:8000
    BalancerMember http://127.0.0.1:8001
  </Proxy>

  RewriteEngine On

  # Uncomment for rewrite debugging
  #RewriteLog logs/myapp_rewrite_log
  #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
application/xml application/xhtml+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/myapp_deflate_log deflate

  ErrorLog logs/appname_errors_log
  CustomLog logs/appname_log combined

</VirtualHost>
This topic is locked and can not be replied to.