Michael Buffington wrote:
> The URLs you pasted are identical so I'm not sure how relevant this
> answer is, but here goes:
> 
> Whenever I reference images, I do so like so:
> 
> /images/image.gif (the first / being very important - it indicates
> "starting at the base URL" or "from the root").
> 
> That way, regardless of what context the layout is executing in, the
> browser will always look for the image off the root URL (like
> http://127.0.0.1:3000/images/image.gif).

The problem with this solution is it only works if your app is running 
as document root, which will be the case if you're running under 
Webrick, but not necessarily otherwise.  If you want your app to be able 
to work correctly even when not installed under document root, use the 
image_tag helper function instead of absolute URLs.  That is, instead of 
writing

<img src="/images/image.gif"/>

Write:

<%= image_tag "image.gif" %>

If your app is installed under somewhere other than document root, this 
will still expand to a valid url.  See the documentation for the 
ActionView::Helpers::AssetTagHelper module for other similar helper 
functions for javascript files and stylesheets.

Here's a more general helper function I use to generate links to any 
static file.  Add this function to the ApplicationHelper module in 
app/helpers/application_helper.rb:

   def link_to_file(name, file, *args)
     if file[0] != ?/
       file = "#{@request.relative_url_root}/#{file}"
     end
     link_to name, file, *args
   end

Which you'd use like:

   <%= link_to_file "Installer Program", "installer.exe" %>

Which would generate

   Installer Program

under Webrick, but if your app is installed under Apache using FCGI, at 
say http://your.host.com/yourapp/, then the generated link would be

   Installer Program

without any changes to your code.