La redirección 301 de dominios, directorios o páginas con .htaccess | SEO Coaching

Jeg har flyttet WordPress-installasjonen min fra ett domene til et annet, og jeg vil bruke en .htaccess-fil på originalen for å omdirigere besøkende til den nye siden på det nye nettstedet.

Det gamle nettstedet er http://www.steve.doig.com.au/wordpress/.

Det nye nettstedet er http://www.superlogical.net

Jeg prøvde å bruke prøvd ved hjelp av følgende .htaccess-fil i /wordpress katalog:

RedirectMatch 301 http://www.steve.doig.com.au/wordpress(.*) http://www.superlogical.net/$1 

Imidlertid er alt dette å omdirigere besøkende til URL: http://www.superlogical.net/wordpress/

Jeg antar at dette fungerer som det skal, men jeg har ikke Wordpress installert i en /wordpress mappen på det nye domenet. Hvordan fjerner jeg dette fra URL-en som er omdirigert til?

  • De RedirectMatch direktivet samsvarer med en rot-slektning (starter med en skråstrek) URL-bane, ikke den absolutte URL-en, så direktivet ovenfor ville ikke ha gjort hva som helst - det hadde ikke matchet. Selv om det ikke samsvarte, ville det ikke blitt omdirigert til /wordpress mappe - så det må ha vært noe annet fortsetter her. For øvrig er 301 viderekoblinger hurtigbufret av nettleseren, så det er ganske mulig at du så et hurtigbufret svar. Det er ofte best å først teste med 302 (midlertidige) viderekoblinger av denne grunn.

I /wordpress/.htaccess fil endret jeg den til følgende:

Options +FollowSymlinks RewriteEngine On RewriteRule ^(.*)$ http://www.superlogical.net/$1 [R=301,L] 

Som løste det for meg.

  • Jeg er bekymret for at ved å kunne omdirigere 301 til gammelt domene til nytt domene, men hva med å omdirigere sider ...?

Når du bruker regexp på den andre parameteren, vil du unnslippe prikkene. Endring

http://www.steve.doig.com.au/wordpress(.*) 

til

http://www\.steve\.doig\.com\.au/wordpress(.*) 

Selve logikken, hvordan du mente det, burde fungere. Overføring av følgende URL-del til den nye URL-en.

  • Takk. Den omdirigerer vellykket fra / wordpress-mappen på det gamle nettstedet, men jeg får en side som ikke ble funnet når jeg prøver å laste inn URL-en til et enkelt wordpress-innlegg på det gamle nettstedet. Nettleseren har fortsatt den gamle URL-en i adressefeltet, noe som indikerer at den ikke har prøvd å omdirigere siden. Må jeg inkludere en .htaccess-fil i hver innholdsmappe?
  • .htaccess-filer vil gjelde for katalogen den er i, samt alle underkataloger. Se httpd.apache.org/docs/2.2/howto/htaccess.html#what
  • Takk, jeg trodde det, men dette endrer ikke det faktum at det ikke fungerer for meg.

Jeg har fått beskjed fra webhotellet om å prøve følgende:

Options +FollowSymlinks RewriteEngine On RewriteCond %{HTTP_HOST} ^(www\.)?steve\.doig\.com\.au/wordpress/$ [NC] RewriteRule ^(.*)$ http://www.superlogical.net/$1 [R=301,L] 

Men dette fungerer bare for / wordpress-mappen, og ikke for noen innleggs- eller kategoriside.

  • Dette burde ikke ha fungert i det hele tatt. De /wordpress/ URL-sti er ikke en del av HTTP_HOST variabel, slik at tilstand ville ha mislyktes, forhindrer omdirigering?

fungert for deg: Charles Robertson | Ønsker du å kontakte oss?