Seite 1 von 1

Problem beim Relaunch von Wordpress auf Joomla mit 301

Verfasst: 22.07.2012, 11:09
von wakila
Hi,

meine Seite soll von Wordpress auf Joomla umziehen und einige Blogbeiträge sollen weitergeleitet werden. Meine htaccess schaut momentan so aus wie unten. Das funktioniert auch wunderbar. Aber wenn ich jetzt die Domain "neue-seite" mit der alten domain nutze, dann kann das ja gar nicht mehr gehen... Also muss ich ja irgendwie bei dem Redirect 301 /kontak den genauen Pfad in Wordpress rausfinden. Hat das schonmal jemand hier gemacht?

Die jetzige Seite liegt im verzeichnis /wordpress und die neue liegt im Verzeichnis /joomla. Die "neue-seite" ist gerade noch eine Test-Domain.
Wenn ich jetzt die Umleitung neu setze, dann stimmen ja die alten URLs nicht mehr und da kann dann doch gar nichts weitergeleitet werden?

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
Redirect 301 /kontak https://www.neue-seite.de/index.php?opt ... &Itemid=55

RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

Verfasst:
von
SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


Verfasst: 22.07.2012, 12:24
von Melegrian
Redirect 301 leitet nur die aufgerufene URL auf eine andere URL weiter. Der interne Pfad für die alte URL, wenn der vor dem Redirect nicht zu sehen war, dann sollte der auch für Redirect keine Rolle spielen, es sei denn, da wird mit mod-rewrite irgend ein Durcheinander erzeugt. Redirect benötigt mod-rewrite nicht, da mod_alias, könnte deshalb eventuell auch weiter unten oder weiter oben stehen, doch da halte ich mich heraus.

Code: Alles auswählen

Redirect 301 /ich-existiere-nicht-mehr.html http&#58;//www.neue-seite.de/ich-bin-neu.html
So vielleicht, aber nur vielleicht:

Code: Alles auswählen

Redirect 301 /kontakt http&#58;//www.neue-seite.de/ich-bin-die-neue-kontaktseite.html


# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - &#91;L&#93;
RewriteCond %&#123;REQUEST_FILENAME&#125; !-f
RewriteCond %&#123;REQUEST_FILENAME&#125; !-d
RewriteRule . /index.php &#91;L&#93;
</IfModule>

# END WordPress
Habe einen kleinen Test gemacht, so sollte es funktionieren, wenn die alte Domain auf das Verzeichnis von WP verweist. Falls die Domain aber auf ein Root-Verzeichnis verweist, in dem die anderen beiden Verzeichnisse liegen, muss das mit angegeben werden. Wobei beim Test diese htaccess nicht im Root, sondern im Verzeichnis /wordpress/ lag.

Beispiel:

"https://example.net/wordpress/kontakt"

leitet weiter auf:

"https://www.example.com/impressum.htm"

Code: Alles auswählen

Redirect 301 /wordpress/kontakt http&#58;//www.example.com/impressum.htm 

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - &#91;L&#93;
RewriteCond %&#123;REQUEST_FILENAME&#125; !-f
RewriteCond %&#123;REQUEST_FILENAME&#125; !-d
RewriteRule . /wordpress/index.php &#91;L&#93;
</IfModule>
# END WordPress

Verfasst: 22.07.2012, 14:08
von wakila
Hi, danke für die ausführliche Hilfe!

den einen Teil verstehe ich noch nicht. Also die Domain bleibt die gleiche.
www.domain.de

dort im Rootverzeichnis gibt es jetzt ein wordpress verzeichnis auf das die Domain momentan weitergeleitet ist und ein Joomla Verzeichnis auf diese zukünftig weitergeleitet werden soll.

Dann ergibt sich daraus doch wirklich eine www.domain.de/ich-existiere-nicht-mehr.html ?

Dein Beispiel würde doch nur funktionieren, wenn es tatsächlich eine neue Domain geben würde, oder? Ich bin total verwirrt... :-? :-? :-?

Könnte ich das Problem nicht lösen, wenn ich die momentane Weiterleitung nicht nur auf das Verzeichnis /wordpress lege sondern in das Rootverzeichnis davor? Dann würde die URL prinzipiell erhalten bleiben??

Verfasst: 22.07.2012, 14:15
von Melegrian
Wenn ich die Direktive für die Weiterleitung in der htaccess vom Root notiere, ohne den Rest von der jetzigen htaccess, die weiterhin im Verzeichnis /wordpress/ liegt, dann funktioniert es ebenso gut. Eventuell ist es sogar angebracht, die htaccess im Verzeichniss von WP nicht zu verändern oder zu ergänzen, sondern in der htaccess vom Root nur die Direktiven für die Weiterleitungen einzutragen und eventuell noch eine Standard-Domain zu definieren, dann kann auch nicht so schnell etwas durcheinander kommen.

Beispiel htaccess beim Test im WP Verzeichnis:

Code: Alles auswählen

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^index\.php$ - &#91;L&#93;
RewriteCond %&#123;REQUEST_FILENAME&#125; !-f
RewriteCond %&#123;REQUEST_FILENAME&#125; !-d
RewriteRule . /wordpress/index.php &#91;L&#93;
</IfModule>
# END WordPress
Beispiel htaccess beim Test im Root:

Code: Alles auswählen

Redirect 301 /wordpress/beispiel-seite http&#58;//www.example.net/impressum.htm 

Verfasst: 22.07.2012, 14:26
von wakila
Klingt gut!

und Du meinst es ist dabei egal, ob die Domain nun auf ein anderes Verzeichnis nämlich joomla gerichtet ist? Oder muss ich die Domain in das RootVerzeichnis lenken und dort dann irgendwie eine Weiterleitung in das Joomlaverzeichnis bauen?

Verfasst: 22.07.2012, 14:40
von Melegrian
Das Root-Verzeichnis bzw. das oberste Verzeichnis für eine Domain ist doch immer das Verzeichnis, auf das die Domain aufgeschaltet ist und nicht das oberste Verzeichnis vom Webspaces was Du siehst, wenn Du Dich da per FTP einloggst.

Verweist die Domain auf /wordpress/, dann würde doch /joomla/ ohnehin nicht dazugehören und wäre über die Domain nicht erreichbar. Andersherum, ist die Domain auf das Verzeichnis von /joomla/ aufgeschaltet, dann ist doch über die Domain /wordpress/, nicht mehr erreichbar. Das ist es, was ich jetzt nicht verstehe. Wenn es so sein sollte, dann benötigst Du doch keine htaccess für /wordpress/ mehr, sondern fügst die Direktive in der htaccess von Joomla ein.

Oder ist die Domain auf das oberste Verzeichnis vom Webspace aufgeschaltet, so dass /wordpress/ und /joomla/ erreichbar sind, dann kannst Du es so wie im letzten Beispiel machen.

Verfasst: 22.07.2012, 14:51
von wakila
Genauso wie Du es beschreibst soll es werden;-)

Ich verstehe nur nicht, was ich dann in die htacess bei /joomla reinschreiben soll, wenn doch die /wordpress gar nicht über die Domain erreichbar ist, da /joomla ja das neue Rootverzeichnis ist. Genau das ist mein Problem, dass ich nicht verstehe...

Daher meine Idee, die jetzige Domain die jetzt auf /wordpress zeigt in einem ersten Schritt auf das root Verzeichnis des FTP-Webservers zu lenken. Dann in der index.html auf /wordpress weiterzuleiten.
In einem zweiten Schritt würde ich dann die HTML Weiterleitung auf /joomla setzen. Dann existiert die /wordpress URL im Prinzip noch und wäre erreichbar. Die andere Möglichkeit die ich mir ausgdeacht hatte war die Joomla Installation einfach mit ins /Wordpress zu kopieren aber das geht sicher nicht gut :crazyeyes:

Oder kann ich irgendetwas direkt in die htaccess von Joomla einfügen, dass das gleich geht?

Danke Dir für Deine Hilfe, ist gar nicht so einfach... :-?

Verfasst: 22.07.2012, 15:14
von Melegrian
Wenn Du nur mit der Domain von /wordpress zu /joomla "umschwenkst" und Joomla auch eine /kontakt hat, dann brauchst Du gar nichts machen, da die URL sich ja nicht verändert. Etwas machen brauchst Du nur, wenn die /kontakt dann eine anderslautende URL hat, wie zum Beispiel durch eine andere Endung /kontakt.html oder durch eine sonstige veränderte Schreibweise. Dann fügst Du so eine Direktive ein, in der htaccess für die Domain, also in der htacces von Joomla:

Code: Alles auswählen

Redirect 301 /kontakt http&#58;//www.example.com/neue-schreibweise.html
Wenn Du aber die Domain auf das Verzeichnis vom Webspace leiten möchtest, damit Joomla und WP nebeneinander unter einer Domain existieren können, dann machst Du das so wie weiter oben beschrieben.

Verfasst: 22.07.2012, 16:00
von wakila
Habs hinbekommen indem ich das jetzt einfach in die /root htacess geschrieben habe. Warum auch immer das funktioniert, da die Root jetzt eigentlich die /root/joomla ist ...

aber es geht :-)

Danke Dir!