Neler yeni

.htaccess ile 301 yönlendirme nasıl yapılır? (1 Viewer)

Mr.Emre 

RedMaster
onursal
Mesajlar
261
Credits
966
# Bir .htaccess sayfası yaratın ve Notepad ++ ile açın
# Zaten .htacces’iniz varsa direk düzenleyelim.
# Şu tanımlayayı yapın

PHP:
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:
Desired destination URL:
.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:
Desired destination URL:
.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:
Desired destination URL:
.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:
Desired destination URL:
.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:
Desired destination URL:
.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]
 

Bu konuyu görüntüleyen kullanıcılar