2

I have a ruby application that runs on a server with multiple IP addresses and mutliple vhosts. Here is the configuration of the problematic virtual host:

<VirtualHost 10.0.0.10:80>
  ServerName realname.example.com
  ServerAlias alias.example.com

  DocumentRoot /var/www/sites/example/current/public
  <Directory /var/www/sites/example/current/public>
    AllowOverride all
    Options -MultiViews
  </Directory>

  ErrorLog /var/log/httpd/example_error_log
  CustomLog /var/log/httpd/example_access_log common

  RailsEnv production
  RackEnv production
</VirtualHost>

When I pull up realname.example.com the Ruby on Rails application works correctly.

On the other hand alias.example.com just gives me Not Found: /

I'm fairly certain the correct vhost is getting used because alias.example.com produces a 404 in the correct log file.

I've tried adding logging to the Passenger config and it seems to indicate that Passenger is getting the request.

Note: I can't redirect alias.example.com to realname.example.com. realname is accessed using a CDN, whereas alias is directly accessed.

Anyone have any ideas why this isn't working? I've been banging my head for days and I've got a similar configuration in QA that works as expected.

Pyzo
  • 135
  • 1
  • 1
  • 7

1 Answers1

2

Turns out the problem was this Apache directive:

UseCanonicalName On

Pyzo
  • 135
  • 1
  • 1
  • 7