2017-12-02 1 views
0

Problem.Sollte einfach Domain-Alias ​​sein ala mod_rewrite

Ich benutze mod_rewrite auf einem GoDaddy Konto, geteilt, cPanel Linux Webserver ... I Inhalt von Domäne 1 zu dienen versuchen, wenn Domain-2 als unsichtbare Umleitung angefordert wird .. aka Domain Aliasing

Domain1 ist eine Wordpress-Site. Ich versuche, eine WordPress/Kategorie/Seite als Inhalt für Domain 2 zu erhalten. Tatsächlich sollte Domain 2 nur diese eine Seite des Inhalts zur Verfügung haben, wo wir eine Formular 2 Email-Seite eingerichtet haben.

Idealerweise sollten alle anderen get-Anfragen sichtbar auf die tatsächliche Domain umgeleitet werden. Natürlich sollte eine Post-Anfrage auf das Formular auf der Alias-Domain (2) gehen ...

Googling relevanten Suchbegriffe führt zu großen Informationsüberlastung. Ich bin mir sicher, dass die Antwort da draußen ist, ich kann einfach nicht die Lösung für dieses genaue Szenario finden. Inzwischen vermute ich, dass GoDaddy .htaccess zwischenspeichert, wodurch es noch schwieriger wird, eine funktionierende Lösung rechtzeitig zu finden.

Ich habe verschiedene Varianten ausprobiert, 15 Minuten zwischen den Edits warten, Browser Cache leeren usw. Ich kann nicht scheinen, die richtige Syntax zu finden, und/oder GoDaddy speichert .htaccess länger als 15 Minuten.

Mein letzter Versuch

RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} ^www.domainalias.com$[OR] 
RewriteCond %{HTTP_HOST} ^domainalias.com$ 
RewriteRule .* http://www.actualdomain.com/subdir/subdir/ [R=301,L] 

, der wie es scheint, sollte genau das tun, was ich will, aber es tut. Es zeigt die domainalias Adresse in dem Browser-URL bar (GUT) ABER, es zeigt die Homepage von http://www.actualdomain.com/ (BAD)

Es sollte http://www.actualdomain.com/subdir/subdir/ anzuzeigen, während www.domainalias.com bar in der Adresse zu halten.

Was fehlt mir?

+0

_ "Das scheint genau das zu sein, was ich will, aber es tut es nicht." _ - es sieht eher so aus, als würde es nichts bewirken. Wenn dies der Fall ist, sehen Sie in der Adresszeile des Browsers "http: // www.actualdomain.com/subdir/subdir /", weil "[R = 301, L]" für eine _externe_ Weiterleitung steht. – CBroe

+0

Ok .. danke dafür ... aber das tut es nicht mal, es ist so, als ob die Bedingung ignoriert wird, keine Umleitung stattfindet, sichtbar oder unsichtbar ... Ich dachte L würde die letzte Regel angeben .. ugh . –

Antwort

0

Ich bin mir immer noch nicht ganz sicher, warum meine früheren Versuche überhaupt nicht umgeleitet haben, weder sichtbar noch unsichtbar. Aber nach ein wenig Schlaf und mehr lesen, habe ich genau das, was ich brauchte mit der folgenden Syntax.

RewriteEngine On 
RewriteBase/
RewriteCond %{HTTP_HOST} ^DomainA.com 
RewriteRule ^(.*) http://DomainB.com/PathToPageHere [P] 
+0

Der Schlaf Teil hat hier die Arbeit gemacht. Das heißt: Sie haben eine permanente Weiterleitung verwendet, die in Ihrem Browser zwischengespeichert wird. Danach führt Ihr Browser keine Anfragen mehr an den Server, sondern führt stattdessen die Browser-Cache-Antwort aus. – Sumurai8

+0

Ich schätze den Versuch hilfreicher Eingaben, aber Sie haben nicht die ganze Frage gelesen, wie dieser Teil ... "Ich habe verschiedene Varianten ausprobiert, 15 Minuten zwischen den Änderungen gewartet, den Browser-Cache gelöscht usw. Ich kann nicht finden die richtige Syntax, " Normalerweise können Sie auf eine noch nie gesehene Abfrage Zeichenfolge wie"? foo = bar "& zwingen den Browser, Cache zu ignorieren zwingen. Funktioniert gut in Firefox mindestens. Chrome verwendet die Cachedateien immer noch unabhängig davon. Daher ist das Leeren des Caches die einzige Möglichkeit, festzustellen, ob die Änderung bei Verwendung von Chrome funktioniert. Haben nicht alle Webentwickler Zugriff auf mindestens 2 oder 3 Browser? –

Verwandte Themen