Setting base url for a rails app

2 views
Skip to first unread message

agilet...@gmail.com

unread,
Aug 23, 2006, 5:46:20 PM8/23/06
to Ruby on Rails: Talk
I've got a rails app that can be accessed either via:

http://[domain]/
or
http://[domain]/[folder]/

The public directory of the app is actually symlinked at /[folder]/,
and accessible at the root path via .htaccess.

Yep, you guessed it, this is a shared host.

I can't seem to figure out how to tell rails that the root path (/) is
the preferred site url, so that url_for and related calls will build
links with that path, rather than including [folder]/

Is there an easy way to do this?

Thanks, greg.

Matthew Margolis

unread,
Aug 23, 2006, 6:04:31 PM8/23/06
to rubyonra...@googlegroups.com
I am assuming that you are using lighttpd. You can use a simple symlink
to get your site in a subdirectory to play nice.
I go over how to do things at
http://blog.mattmargolis.net/articles/2006/08/01/rails-in-a-subdirectory-apache-lighttpd-mixed-environment

Basically you just use relative_url_root and

|cd /sites/rails/somerailssite/public
ln -s . somerailssite

|

|This will get all requests to http://[domain]/folder to hit the public
folder of your application.|
|Then you just need to configure your lighttpd.conf file to hit up your
rails application in the subdirectory when you go to http://domain

If you need help with the lighttpd part just ask.
|

||||

|Matthew Margolis
blog.mattmargolis.net|

||

|
|

agilet...@gmail.com

unread,
Aug 24, 2006, 9:58:06 AM8/24/06
to Ruby on Rails: Talk
Turns out all I needed was to add this to my environment.rb:

ActionController::AbstractRequest.relative_url_root = ""

Thanks!

g.

Reply all
Reply to author
Forward
0 new messages