Slash after domain in URL missing for Rails site
Posted
by
joshee
on Server Fault
See other posts from Server Fault
or by joshee
Published on 2012-12-18T15:37:33Z
Indexed on
2012/12/18
17:04 UTC
Read the original article
Hit count: 237
apache2
|ruby-on-rails
After redirecting users in a Rails app, for some reason the slash after the domain is missing. Generated URLs are invalid and I'm forced to manually correct them. The problem only occurs on a subdomain. On a different primary domain (same server), everything works ok.
For example, after logging out, the site is directing to https://www.sub.domain.comlogin/ rather than https://www.sub.domain.com/login
I suspect the issue has something to do with the vhost setup, but I'm not sure. Here are the broken and working vhosts:
BROKEN SUBDOMAIN
<VirtualHost *:80>
ServerName www.sub.domain.com
ServerAlias sub.domain.com
Redirect permanent / https://www.sub.domain.com
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName www.sub.domain.com
ServerAlias sub.domain.com
RailsEnv production
# SSL Engine Switch
SSLEngine on
# SSL Cipher Suite:
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
# Server Certificate
SSLCertificateFile /path/to/server.crt
# Server Private Key
SSLCertificateKeyFile /path/to/server.key
# Set header to indentify https requests for Mongrel
RequestHeader set X_FORWARDED_PROTO "https"
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
DocumentRoot /home/usr/www/www.sub.domain.com/current/public/
<Directory "/home/usr/www/www.sub.domain.com/current/public">
AllowOverride all
Allow from all
Options -MultiViews
</Directory>
WORKING PRIMARY DOMAIN
<VirtualHost *:80>
ServerName www.diffdomain.com
ServerAlias diffdomain.com
Redirect permanent / https://www.diffdomain.com
</VirtualHost>
<VirtualHost *:443>
ServerAdmin [email protected]
ServerName www.diffdomain.com
ServerAlias diffdomain.com
ServerAlias *.diffdomain.com
RailsEnv production
# SSL Engine Switch
SSLEngine on
# SSL Cipher Suite:
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
# Server Certificate
SSLCertificateFile /path/to/server.crt
# Server Private Key
SSLCertificateKeyFile /path/to/server.key
# Set header to indentify https requests for Mongrel
RequestHeader set X_FORWARDED_PROTO "https"
BrowserMatch ".*MSIE.*" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
DocumentRoot /home/usr/www/www.diffdomain.com/current/public/
<Directory "/home/usr/www/www.diffdomain.com/current/public">
AllowOverride all
Allow from all
Options -MultiViews
</Directory>
</VirtualHost>
Please let me know if there's anything else I could provide that would help determine what's wrong here.
UPDATE tried adding a trailing slash to the redirect command, but still no luck.
© Server Fault or respective owner