Weiterleiten von Nicht-WWW-Anforderungen an www-URLs in Rails

8

Einfaches Problem, aber es scheint nicht möglich zu sein, eine schnelle googelnde Antwort zu finden. Was ist die Art und Weise, wie Rails diesen 301 direkt ausführt ( Ссылка ) Ссылка ). Ein before_filter?

    
Newy 10.11.2009, 07:48
quelle

6 Antworten

17

Idealerweise würden Sie dies in Ihrer Webserver-Konfiguration (Apache, nginx usw.) tun, damit die Anfrage überhaupt nicht auf Rails reagiert.

Fügen Sie das folgende before_filter zu Ihrem ApplicationController :

hinzu %Vor%

Wenn Sie die Umleitung mit Apache durchführen wollten, könnten Sie dies verwenden:

%Vor%     
John Topley 10.11.2009, 07:54
quelle
7

Johns Antwort ist vollkommen in Ordnung, wenn Sie Rails & gt; = 2.3 verwenden, würde ich vorschlagen, einen neuen Metal zu erstellen. Rails Metals sind effizienter und bieten bessere Leistung.

%Vor%

Öffnen Sie dann die Datei und fügen Sie den folgenden Code ein.

%Vor%

Natürlich kannst du den Metal weiter anpassen.

Wenn Sie Apache verwenden möchten, hier ist ein einige Konfigurationen .

    
Simone Carletti 10.11.2009 08:06
quelle
7

Verwenden Sie für Schienen 4 -

%Vor%     
Mashpy Says 26.03.2015 13:36
quelle
3

Es gibt eine bessere Rails 3-Möglichkeit - fügen Sie dies in Ihre routes.rb -Datei ein:

%Vor%

Aktualisieren

Hier ist, wie man es domänenunabhängig macht:

%Vor%     
Pavel Nikolov 11.06.2013 15:38
quelle
0

Ich habe diesen Artikel gefunden, als ich versuchte, das Gegenteil zu erreichen (www to root domain redirection). Also habe ich den Code geschrieben, der leitet alle Seiten von www zur Stammdomäne um .

    
Aymeric 30.07.2010 01:03
quelle
0

Sie können den folgenden Code versuchen -

%Vor%     
Daniel Filho 19.06.2015 03:32
quelle

Tags und Links