SEO Wordpress

.htaccess ile 301 sayfa yönlendirmesi nasıl yapılır?

301-yonlendirmesi

Özellikle bir demo sitede çalıştıktan sonra taşırken ihtiyacım oluyor yönlendirmelere ve değişikliklere. 301 Yönlendirmeleri ile .htacces dosyanızı kullanarak yeniden düzenlenmiş olan çalışmanızın adresini sitenizin link adresine yönlendirmeniz mümkün. Daha açıklayıcı mantık ile eskisite.com adresindeki bir sayfayı yenisite.com adresindeki bir sayfaya nasıl yönlendireceğinizin yönergesidir 301 htaccess yönlendirmesi.

Peki ama nasıl yaparız?

Bir .htaccess sayfası yaratın ve Notepad ++ ile açın

Zaten .htacces’iniz varsa direk düzenleyelim.

Şu tanımlayayı yapın

1
redirect 301 /eskisite/eskisayfa.htm http://www.yenisite.com/yenisayfa.htm

Dosyayı kaydedin.

Şimdi eski sayfanızı tarayıcı çubuğuna yazıp kontrol edin.

Burada dikkat edilecek nokta şu olmalı. Eski sitedeki yolu belirtirken hiç bir suretle http:// veya www bön eki kullanmamalısınız. Sadece sitenizin adres devamının alt sayfasını yazmalısınız. /adres.html gibi.

Buna alternatif olarak meta yönlendirme de kullanabilirsiniz.

Bunun için ;

1
<meta http-equiv="refresh" content="10; url=http://site.com/">

buradaki 10 sayfanın 10 saniye sonra belirlediğiniz adrese yönlendirilmesi gerektiği değeridir. Bu kodu da head tagleri arasında kullanmanız gerekiyor.

2. 301 htaccess yönlendirmesi ile tüm siteyi yönlendirme

1
2
3
4
RewriteEngine on
RewriteCond %{HTTP_HOST} ^eskisite.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.eskisite.com [NC]
RewriteRule ^(.*)$ http://yenisite.net/$1 [L,R=301,NC]

3. Htm uzantılı sayfaları php uzantılı sayfalara yönlendirme

1
2
3
RewriteEngine on
RewriteBase /
RewriteRule (.*).htm$ /$1.php

Taşıma sonrası veritabanı düzenleme ve eski siteyi yeni adrese yönlendirme htaccess ile birlikte;

 

UPDATE wp_options SET option_value = replace(option_value, ‘http://www.eski-adres.com’, ‘http://www.yeni-adres.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;

UPDATE wp_posts SET guid = replace(guid, ‘http://www.eski-adres.com’,’http://www.yeni-adres.com’);

UPDATE wp_posts SET post_content = replace(post_content, ‘http://www.eski-adres.com’, ‘http://www.yeni-adres.com’)

şimdi de eski adresteki .htaccess dosyasını düzenle.

RewriteEngine on
RewriteCond %{HTTP_HOST} ^.eski-adres.com$ [OR] RewriteCond %{HTTP_HOST} ^www.eski-adres.com
RewriteRule ^/?(.*)$ “http://www.yeni-adres.com/$1” [R=301,L]

 

 

Diğer Htaccess yönlendirmeleri;

#301 Redirects for .htaccess

#Redirect a single page:
Redirect 301 /pagename.php http://www.domain.com/pagename.html

#Redirect an entire site:
Redirect 301 / http://www.domain.com/

#Redirect an entire site to a sub folder
Redirect 301 / http://www.domain.com/subfolder/

#Redirect a sub folder to another site
Redirect 301 /subfolder http://www.domain.com/

#This will redirect any file with the .html extension to use the same filename but use the .php extension instead.
RedirectMatch 301 (.*)\.html$ http://www.domain.com$1.php

##
#You can also perform 301 redirects using rewriting via .htaccess.
##

#Redirect from old domain to new domain
RewriteEngine on
RewriteBase /
RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]

#Redirect to www location
RewriteEngine on
RewriteBase /
rewritecond %{http_host} ^domain.com [nc] rewriterule ^(.*)$ http://www.domain.com/$1 [r=301,nc]

#Redirect to www location with subdirectory
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} domain.com [NC] RewriteRule ^(.*)$ http://www.domain.com/directory/index.html [R=301,NC]

#Redirect from old domain to new domain with full path and query string:
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*) http://www.newdomain.com%{REQUEST_URI} [R=302,NC]

#Redirect from old domain with subdirectory to new domain w/o subdirectory including full path and query string:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/subdirname/(.*)$
RewriteRule ^(.*) http://www.katcode.com/%1 [R=302,NC]

Rewrite and redirect URLs with query parameters (files placed in root directory)

Original URL:

http://www.example.com/index.php?id=1
Desired destination URL:

http://www.example.com/path-to-new-location/
.htaccess syntax:

RewriteEngine on
RewriteCond %{QUERY_STRING} id=1
RewriteRule ^index\.php$ /path-to-new-location/? [L,R=301] Redirect URLs with query parameters (files placed in subdirectory)

Original URL:

http://www.example.com/sub-dir/index.php?id=1
Desired destination URL:

http://www.example.com/path-to-new-location/
.htaccess syntax:

RewriteEngine on
RewriteCond %{QUERY_STRING} id=1
RewriteRule ^sub-dir/index\.php$ /path-to-new-location/? [L,R=301] Redirect one clean URL to a new clean URL

Original URL:

http://www.example.com/old-page/
Desired destination URL:
http://www.example.com/new-page/
.htaccess syntax:

RewriteEngine On
RewriteRule ^old-page/?$ $1/new-page$2 [R=301,L] Rewrite and redirect URLs with query parameter to directory based structure, retaining query string in URL root level

Original URL:

http://www.example.com/index.php?id=100
Desired destination URL:

http://www.example.com/100/
.htaccess syntax:

RewriteEngine On
RewriteRule ^([^/d]+)/?$ index.php?id=$1 [QSA] Rewrite URLs with query parameter to directory based structure, retaining query string parameter in URL subdirectory

Original URL:
http://www.example.com/index.php?category=fish
Desired destination URL:
http://www.example.com/category/fish/
.htaccess syntax:

RewriteEngine On
RewriteRule ^/?category/([^/d]+)/?$ index.php?category=$1 [L,QSA] Domain change – redirect all incoming request from old to new domain (retain path)

RewriteEngine on
RewriteCond %{HTTP_HOST} ^example-old\.com$ [NC] RewriteRule ^(.*)$ http://www.example-new.com/$1 [R=301,L] If you do not want to pass the path in the request to the new domain, change the last row to:

RewriteRule ^(.*)$ http://www.example-new.com/ [R=301,L]

#From blog.oldsite.com -> www.somewhere.com/blog/
retains path and query, and eliminates xtra blog path if domain is blog.oldsite.com/blog/
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI}/ blog
RewriteRule ^(.*) http://www.somewhere.com/%{REQUEST_URI} [R=302,NC] RewriteRule ^(.*) http://www.somewhere.com/blog/%{REQUEST_URI} [R=302,NC]

 

Yazar hakkında

Oğuzhan İsa Temiz

Güncel SEO ve Marketing içeriklerini derleyip yazmayı seven yazar aynı zamanda kişisel bir blog edası içerisinde içerik üretiyor. Farklılaşan kişisel psikolojiler insanları başka bir insan haline bürünmeye zorlayabiliyor. Tabii bir filmde de geçtiği gibi " Evet,biz tüketiciyiz.Tutkulu bir yaşam tarzının yan ürünleriyiz.Cinayet,suç,fakirlik bunlar beni ilgilendirmiyor.
Benim için önemli olan magazin dergileri.500 kanallı TV,iç çamaşırım da kimin adının yazdığı…" bana destek olmak isterseniz yazılarımı paylaşabilirsiniz.

Yorum yap!