2009-05-29 4 views

Répondre

1

Cela devrait faire l'affaire, en supposant que vous avez mod_rewrite activé

RewriteEngine on 

    RewriteCond %{HTTP_HOST} ^www.example\.com 
    RewriteRule ^(.*)$ http://example.com$1 [R=301,L] 
0

Cela dépend de la configuration de votre serveur et il existe différentes manières. Vous pouvez simplement cname www dans DNS au domaine racine, pour un sens. Si vous utilisez Rails derrière Apache, vous pouvez le faire dans Apache avec mod_rewrite. Si vous envoyez des requêtes réseau directement dans Rails avec, par exemple, mongrel (ou webbrick), vous devrez peut-être configurer ces serveurs ou utiliser des routes Rails.

Espoir qui aide,

adricnet

0

Selon le Apache's name-based virtual host documentation le premier hôte virtuel est l'hôte par défaut. Je l'utilise pour rendre la première entrée d'un fourre-tout qui redirige toutes les demandes « non défini » au site principal:

# Default catch-all 
<VirtualHost *:80> 
    # Note the lack of a ServerName 
    RewriteRule ^(.*)$ http://www.example.com$1 [redirect=permanent] 
</VirtualHost> 

# Site 1 - www.example.com 
<VirtualHost *:80> 
    ServerName www.example.com 

    [ the rest of the site config ] 

</VirtualHost> 

Pour un crédit supplémentaire, vous pouvez configurer une entrée DNS générique afin que chaque hôte non définie (par exemple asdfasdfasdfas .example.com) est redirigé vers www.example.com.

0

Vous ne voulez pas l'entendre, mais je suggère la fixation ce qui brise la place. Vous avez codé en dur votre domaine quelque part dans votre application, probablement dans votre routage mais il n'est pas possible de le dire sans les spécificités de l'erreur (s), et vous devez supprimer cela afin que vous, ou un autre responsable, ne soyez pas avoir à faire face à nouveau à l'avenir.

Questions connexes