Seite 1 von 2

Weiterleitung - Wie geht's

Verfasst: 15.08.2008, 21:05
von SeriousBadMan
ich hab noch nie eine Weiterleitung durchgeführt. Ich möchte jetzt eine suma-freundliche weiterleitung von einer unterseite, die ich lösche, zu einer neuen unterseite, die gerade entsteht, machen (beides gleiche domain) welche art der weiterleitung ist empfehlenswert und wie wird die durchgeführt? (code?)

sagen wir ich will von paid-sms.html umleiten auf rap-rnb-geschichte.html

danke im vorraus...

Verfasst:
von

Verfasst: 15.08.2008, 21:29
von hypnos
wenn schon denn schon

Verfasst: 15.08.2008, 21:40
von SeriousBadMan
hypnos hat geschrieben:Einfach den untenstehenden Code in die .htaccess Datei und auf deinen Server hochladen.

Code: Alles auswählen

RewriteEngine on
Redirect permanent /paid-sms.html http://domain.tld/rap-rnb-geschichte.html
Oder suche mit G oo gle nach: "redirect permanent"+htaccess
dankeschön. :-) kann ich die alte seite komplett löschen, oder soll ich eine leere paid-sms.html hochladen?

Verfasst: 15.08.2008, 21:45
von hypnos
wenn schon denn schon

Verfasst: 15.08.2008, 22:01
von Mork vom Ork
hypnos hat geschrieben:RewriteEngine on
Redirect permanent /paid-sms.html https://domain.tld/rap-rnb-geschichte.html
Redirect hat nichts mit mod_rewrite zu tun, die RewriteEngine-Zeile ist überflüssig.

Verfasst: 15.08.2008, 22:08
von SeriousBadMan
danke, danke! funktioniert 1A! :D

Verfasst: 15.08.2008, 22:11
von hypnos
wenn schon denn schon

Verfasst: 15.08.2008, 22:23
von Mork vom Ork
hypnos hat geschrieben:Kann ja möglich sein, dass er vor hat, eine Standarddomain festzulegen.
Das hat aber weder was mit seiner Frage zu tun noch mit deiner Lösung. Und von den anderen Optionen hast du ja auch keine ins Beispiel aufgenommen, obwohl er die auch für irgendwas gebrauchen könnte. Wir sind hier ja nicht im 99-Cent-Laden, wo man jeden Ramsch mitschleppt, nur weil er in der Grabbelkiste verfügbar ist ;)

Verfasst: 15.08.2008, 22:34
von hypnos
wenn schon denn schon

Verfasst: 16.08.2008, 09:23
von Mork vom Ork
hypnos hat geschrieben:Für den Anfang ist es genug wenn man ne Standartdomain festlegt und so einfach wie möglich ein paar Weiterleitungen hinbekommt.
Mit einer alleinstehenden RewriteEngine-Zeile legst du nur leider keine Standarddomain fest, da fehlen zwei Drittel. Ergo ist sie hier, wie geschrieben, überflüssig.

Entweder du zeigst, wie man die gewünschte Weiterleitung hinbekommt, oder du zeigst, wie man Weiterleitung und Standarddomain hinbekommt (auch wenn nach letzterem nicht gefragt war). Aber die angefragte Weiterleitung und dazu eine angebliche Standarddomain-Weiterleitung, die jedoch nur mit hellseherischen Kräften zu erahnen ist, weil so ziemlich alles fehlt, finde ich wenig sinnvoll.

Verfasst: 16.08.2008, 09:53
von Duffy
Hallo Mork vom Ork,

dieses Thema interessiert mich auch brennend.

Kannst du mir dann bitte mal beschreiben, was ich genau machen muß, um von mehreren Domains auf einen "Hauptdomain" (Standarddomain) googlefreundlich weiterleiten muß.

Reicht da der o.a. .htaccess - Eintrag?

Ich möchte einige Domains, die Themenbezogen sind und teilweise andere TLDs haben (.com, .biz) auf eine Haupt-/Standarddomain weiterleiten und dies möglichst suchmaschinenfreundlich.

Danke, Duffy

Verfasst: 16.08.2008, 16:37
von Mork vom Ork
Duffy hat geschrieben:Kannst du mir dann bitte mal beschreiben, was ich genau machen muß, um von mehreren Domains auf einen "Hauptdomain" (Standarddomain) googlefreundlich weiterleiten muß.

Reicht da der o.a. .htaccess - Eintrag?
Mit Redirect kannst du nur URL-Pfade weiterleiten, also dem Teil zwischen erstem Schrägstrich und erstem folgenden Frage- oder Nummernzeichen, eine Prüfung der Domain ist mit Redirect nicht möglich. Die anderen Domains müssten daher eigenen Webspace haben, um mit Redirect arbeiten zu können.

Falls mehrere Domains in demselben Verzeichnis landen und anhand der Domain weitergeleitet werden soll, musst du, wie hypnos schon geschrieben hat, auf mod_rewrite zurückgreifen, etwa so:

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

1. Die erste Zeile schaltet mod_rewrite ein.
2. Die dritte Zeile vergleicht den aktuellen Pfad mit dem gegebenen Muster, welches in diesem Falle auf alles passt (. = beliebiges Zeichen, * = beliebig viele vom vorangehenden Element, .* = beliebig viele beliebige Zeichen).
3. Passt das Muster aus der dritten Zeile, wird in der zweiten Zeile die angefragte Domain mit dem Muster ^www\.example\.com$ verglichen und das Ergebnis negiert (wegen des führenden Ausrufezeichens).
4. Passt auch das Muster aus der zweiten Zeile, wird abschließend an das Ziel der dritten Zeile weitergeleitet.

Zusammengefasst wird mit obigen drei Zeilen alles (RewriteRule .* …), was nicht von www.example.com geliefert werden soll (RewriteCond … !^www\.example\.com$), an den gleichen Pfad unter www.example.com weitergeleitet (RewriteRule … https://www.example.com/$1 [R=301]).

Siehe auch https://httpsd.apache.org/docs/2.2/mod/mod_rewrite.html.

Verfasst: 16.08.2008, 23:30
von hypnos
wenn schon denn schon

Verfasst: 17.08.2008, 09:13
von Mork vom Ork
hypnos hat geschrieben:Für das untenstehende erwarte ich keine Antwort weil man dazu etwas mehr wissen muss als das was die üblichen schlauen drauf haben.
Das siehst du vollkommen richtig. Ein nicht-üblicher Schlauer hätte bei seinem Beitrag, in diesem Falle deine Frage, nicht wieder die Hälfte weggelassen bzw. ungenannte Dinge impliziert.

Allerdings frage ich mich, warum du überhaupt die Frage stellst, wenn du sowieso sicher bist, keine Antwort zu bekommen? Vermutlich hoffst du insgeheim ganz dolle, dass derjenige, dem du da grundlos ans Bein zu pinkeln versuchst, hier ganz bestimmt weiter mitliest und dir auch auf die Sprünge hilft - ansonsten hättest du ja besser eine eigene Frage aufgemacht, damit garantiert alle Boardbesucher an dem "Antworten: 0"-Zähler sehen, dass hier was Neues, Unbeantwortetes ansteht, und nicht nur drei Hansel noch ein paar Details klären, gell?
RewriteRule ^html/(.*)/$ /cgi-bin/perl.cgi?id=$1 [L,QSA][/code]
Lauter dynamischer HTML Dokumente die von ein PERL Script generiert werden.

Werden umgeschrieben zu:
https://www.domain.tld/html/1000/
Da werden also HTML-Dateien von einem Perl-Skript auf die Festplatte geschrieben und dann unter /html/123/ gespeichert. Was hat das mit der RewriteRule-Zeile zu tun? mod_rewrite arbeitet auf der Eingangsseite mit URLs, nicht auf der Ausgabeseite mit Dateien.

Hast du das möglicherweise dahingehend verwechselt, dass da erst ankommende URLs à la /html/123/ in /cgi-bin/perl.cgi?id=123 umgeschrieben werden und abschließend das Perl-Skript HTML-Daten ausspuckt?
Kann man da irgendwas machen so das diese URLs als PHP interpretiert werden.
Oh, ganz einfach:

RewriteRule ^html/(.*)/$ /skript.php?id=$1 [L,QSA]

Was hat das jetzt mit den HTML-Dokumenten, die vom Perl-Skript erzeugt werden, zu tun? Wenn du /html/123/ durch PHP verwurstet sehen willst, verpasse der zuständigen Datei eine .php-Endung, zumeist wäre das /html/123/index.php.

Aber hellseherisch, wie ich veranlagt bin (und dumm, wie ich mich gerade anzustellen versuche), vermute ich, dass du eigentlich was ganz anderes wissen wolltest. Und somit hättest du am Ende doch richtig gelegen: Für eine Antwort muss man etwas mehr wissen, als das, was die üblichen Schlauen bei ihren Fragen preisgeben.

Verfasst: 17.08.2008, 18:27
von hypnos
wenn schon denn schon