htaccess schreibt alle URLs (inkl. Bild-Hrefs) von einer Domain in eine andere um

htaccess schreibt alle URLs (inkl. Bild-Hrefs) von einer Domain in eine andere um

Ich habe ein WordPress-Blog in einem Unterverzeichnis, das ich kürzlich von .com auf .co.uk migriert habe (myurlstudio.com/blog auf myurl.co.uk/blog). Das Problem ist, dass viele der Beiträge Bilder enthalten und ihre hrefs immer noch auf die alte Domain verweisen, sodass sie mit den aktuellen htaccess-Einstellungen nicht funktionieren. Die Bilder verweisen aufhttp://www.myurlstudio.com/blog/wp-content/uploads/image.jpg, wenn ich möchte, dass sie darauf verweisenhttp://www.myurl.co.uk/blog/wp-content/uploads/image.jpg. Was ich also in htaccess ändern muss, ist 'http://www.myurlstudio.com/blog' Zu 'http://www.myurl.co.uk/blog', wo immer es auftaucht.

Der aktuelle htaccess sieht folgendermaßen aus (es ist das Standard-URL-Umschreibungsschema für concrete5):

# -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www.)?myurlstudio.com$
RewriteRule ^(.*)$ http://www.myurl.co.uk/$1 [L]


RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]


</IfModule>
# -- concrete5 urls end --

Wie Sie sehen, wird myurlstudio.com umgeleitet, aber URLs in Dokumenten scheinen nicht umgeschrieben zu werden.

Jede Hilfe wäre sehr willkommen!

Antwort1

Wenn Sie Zugriff auf den alten Host haben (was den Kommentaren zufolge zumindest der Fall sein dürfte), sollte Ihre Regel funktionieren, wenn sie im Docroot der alten Site platziert wird:

RewriteCond %{HTTP_HOST} ^(www.)?myurlstudio.com$
RewriteRule ^(.*)$ http://www.myurl.co.uk/$1 [L,R=301,QSA]

ABER dadurch werden nur alte Anfragen umgeleitet. Sie müssen die Site trotzdem aktualisieren, um auf die neue Domäne zu verweisen, wenn die alte Domäne irgendwann abläuft.

verwandte Informationen