2016-06-02 12 views
1

Ich arbeite an einer bestimmten Bedingung in der Produktionsumgebung, wo ich Benutzer zu dritten Teil umleiten müssen, falls eine bestimmte URL.Umleiten Benutzer auf andere Website mit Apache Rewrite-Regel

Ich bin mir bewusst, dass Rewrite-Regel für diesen Fall verwendet werden kann, aber ich stolperte Redirect in Apache, die verwendet werden kann, wenn Ressource auf einen anderen Server verschoben.

Kann jemand mir helfen, die richtige Art und Weise zu verstehen, dies zu tun, die ich für diese URL verwenden möchten ‚www.mysite.com/some/optional Parameter/Testseite‘ und mysite.com/some/optional parameter/testpage zu http://testpage.mysite.com/

#With Redirect 
Redirect "www.mysite.com/testpage" "http://testpage.mysite.com/" 
Redirect "mysite.com/testpage" "http://testpage.mysite.com/" 
umleiten

ist dies der richtige Weg, um dies zu erreichen, oder ich muss einen anderen Ansatz wählen.

+0

Sie können eine 301 (permanente) oder 302 (temporäre) Weiterleitung auf der Apache-Ebene verwenden. https://www.digitalcean.com/community/tutorials/how-to-create-temporary-and-permanent-redirects-with-apache-and-nginx – mhatch

Antwort

1

Sie können nicht die Redirect Direktive für den passenden Host-Namen in der Anfrage verwenden. Besser zu verwenden mod_rewrite und tun Sie eine 301 Umleitung.

RewriteEngine On 

RewriteCond %{HTTP_HOST} ([^.]+\.[^.]+)$ [NC] 
RewriteRule (?:^|/)(thepact)/?$ http://$1.%1 [L,NC,R=301] 
+0

Danke für die Eingabe, aber ich bin mir nicht sicher über diese Linie ' http: // $ 1.% 1' –

+0

'$ 1' ist im Grunde' testpage' (wird von 'RewriteRule' übernommen) und'% 1' ist ein Teil nach dem optionalen 'www' in' RewriteCond' (es wird 'mysite.com' erfasst 'in'% 1'). Hast du diese Regel getestet? – anubhava

+0

Ich habe versucht und es hat nicht funktioniert für mich, ich habe einige zusätzliche Parameter nach dem Domain-Namen wie 'mysite.com/optional/testpage' und für mich wird Umleitung auf andere URL passieren und nicht mit in der gleichen URL –

Verwandte Themen