• 28-01-2010, 01:16:51
    #1
    Arkadaşlar sitemin sef yapısını değiştirdim. Google'dan eski sef yapısındaki index'lerime girenlerin yeni sef yapısındaki link'e yönlenmesini istiyorum.
    Uğraştım ama bir türlü yapamadım.

    Bunu .htaccess'ten nasıl yapabilirim ?

    girilen adres (eski sef yapısı)=> http://www.siteadresi.com/2912/Divane-Asik-Gibi-dinle.html

    yonlendirilen (yeni sef yapısı)=> http://www.siteadresi.com/Sevval-Sam/Divane-Asik-Gibi-dinle.html

    şeklinde olacak.
  • 28-01-2010, 01:19:49
    #2
    .htaccess ile yapman pek mümkün değil iki url yapısı arasında çok fark var. Benzerlik olmadığı için .htaccess ile yapamazsın. Php ile yapabilirsin tabiki.
  • 28-01-2010, 01:46:37
    #3
    scopus adlı üyeden alıntı: mesajı görüntüle
    .htaccess ile yapman pek mümkün değil iki url yapısı arasında çok fark var. Benzerlik olmadığı için .htaccess ile yapamazsın. Php ile yapabilirsin tabiki.
    Sadece numara yerine sanatçı ismi geliyor. Php ile nasıl yapabiliriz ?
  • 28-01-2010, 01:51:24
    #4
    Notfound sayfası oluştur php'de eski url orda parçala url'deki sanatcı id'si sanırım bunu url den al db'de arattır karşılık gelen sanatçı ismini al o sanatçı ismi ile tekrar sayfayı yönlendir yeni url yapısına.
  • 28-01-2010, 01:58:08
    #5
    Aslında bir numarayı değiştirmeni tavsiye etmem. Sanırım o id'ye göre sorgulama yapıyor. Sana biraz .htaccess'ı anlatayım
    Senin .htaccess'da aşağıdaki gibi yazması lazım
    Rewriterule (.*)/(.*)-dinle.html sarki.php?id=$1
    gibi olabilir. Bunun anlamı 1. koyduğun (.*) 'ı $1 olarak atar ve sarki.php deki $_GET["id"]; ye post eder. Senin istediğini direk yaparsan şarkıcı adını get olarak çeker id ile sorgulama yapar büyük olasılıkla mysql hatası alırsın. Bunun yerine
    /id-şarkıcı adı/şarkı adı.html yaparsan :
    Rewriterule (.*)-(.*)/(.*)-dinle.html sarki.php?id=$1
    Gene ilk (.*) 'i $1 olarak atar ve sarki.php 'nin id'sine get yapar.

    Biraz karışık oldu ama bunu tek .htaccess la biraz zor çözersin.
  • 28-01-2010, 05:20:34
    #6
    Üyeliği durduruldu
    sezabut adlı üyeden alıntı: mesajı görüntüle
    Sadece numara yerine sanatçı ismi geliyor. Php ile nasıl yapabiliriz ?
    EVet arkadaşlarında sölediği gibi

    girilen adres (eski sef yapısı)=> http://www.siteadresi.com/2912/Divan...ibi-dinle.html

    eski sef yapısında olan 2912 id yerine sanatçı ismi gelirse mysql`e bunu anlatman biraz zor,
    o zaman php sayfa(ları)nda mysql`den id ile çekilen veriyi sanatçı ismine göre çektirmen lazım ama bir kişinin 2 parçası varsa sitende olay karışıcaktır.
    En iyi çözüm yolu Dogukan arkadaşında sölediği gibidir.

    2912 diye geçen numara mutlaka orda kalması lazım.
    Eğer illa ki değişiklik yapıcaksan,

    girilen adres (eski sef yapısı)=> http://www.siteadresi.com/2912/Divan...ibi-dinle.html

    yonlendirilen (yeni sef yapısı)=> http://www.siteadresi.com/2912-Sevva...ibi-dinle.html

    ve ya

    yonlendirilen (yeni sef yapısı)=> http://www.siteadresi.com/Sevval-Sam...ibi-dinle.html

    Şeklinde olmalıdır.
  • 28-01-2010, 13:05:57
    #7
    scopus, Dogukan, XiechenG yardımlarınız için tşk.ederim.

    Anladım o zaman ben yeni sef yapısını;

    http://www.siteadresi.com/Divane-Asik-Gibi-dinle.html şeklinde yapsam.

    Buna göre,

    girilen adres (eski sef yapısı)=> http://www.siteadresi.com/2912/Divane-Asik-Gibi-dinle.html

    yonlendirilen (yeni sef yapısı)=> http://www.siteadresi.com/Divane-Asik-Gibi-dinle.html

    Bu yönlendirmeyi sadece htaccess ile çözmem mümkün mü ?
    Mümkünse nasıl bir kod girmem gerekir ?
  • 01-02-2010, 05:15:42
    #8
    Üyeliği durduruldu
    var sayalim .htaccess'de su kod var.

    Rewriterule (.*)/(.*)-dinle.html sarki.php?id=$1
    $id alip sql sorgulama yapilir

    select from mp3 where id=$id mesela

    eger sen id yerine sanatci adi koymak istiyorsan

    ozaman

    Rewriterule (.*)/(.*)-dinle.html sarki.php?id=$2
    yaparsin ve

    $id aldiktan sonra sql sorgu su sekil olacak

    select from mp3 where seo=$id

    mesela seo'da ayni url varsa ine ayni sarkiyi calir.

    yolu gosterdim, kapiyi bulursun artik .
  • 01-02-2010, 06:22:12
    #9
    Üyeliği durduruldu
    sezabut adlı üyeden alıntı: mesajı görüntüle
    scopus, Dogukan, XiechenG yardımlarınız için tşk.ederim.

    Anladım o zaman ben yeni sef yapısını;

    http://www.siteadresi.com/Divane-Asik-Gibi-dinle.html şeklinde yapsam.

    Buna göre,

    girilen adres (eski sef yapısı)=> http://www.siteadresi.com/2912/Divane-Asik-Gibi-dinle.html

    yonlendirilen (yeni sef yapısı)=> http://www.siteadresi.com/Divane-Asik-Gibi-dinle.html

    Bu yönlendirmeyi sadece htaccess ile çözmem mümkün mü ?
    Mümkünse nasıl bir kod girmem gerekir ?
    sezabut` un dediği gibi yaparsan php kodlarla da oynaman gerekecek.
    eğer yapamazsan php`sayfanın kodlarını yaz bir bakalım.