• 27-09-2020, 15:58:53
    #1
    Merhaba, bugün farkettim url sonuna / işareti koyduğumda sayfa bulunamadı diyor. .htaccesse nasıl bir kod eklemeliyim?
    Mevcut kod

    RewriteEngine On
    RewriteCond %{HTTP_HOST} !^www\. [NC]
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    RewriteRule ^blog$ index.php?sayfa=blog
    RewriteRule ^blog/([_A-Za-z0-9-]+)$ index.php?sayfa=makale&sef=$1
    RewriteRule ^sayfa/([_A-Za-z0-9-]+)$ index.php?sayfa=sayfa&sef=$1
    RewriteRule ^servis/([_A-Za-z0-9-]+)$ index.php?sayfa=kategori&sef=$1
    RewriteRule ^satin-al/([_A-Za-z0-9-]+)$ index.php?sayfa=satinal&sef=$1
    RewriteRule ^odeme-sonuc/basarili$ index.php?sayfa=odeme_detay&durum=1
    RewriteRule ^odeme-sonuc/hata$ index.php?sayfa=odeme_detay&durum=0
    RewriteRule ^siparis-sorgula$ index.php?sayfa=siparis_sorgula
    RewriteRule ^iletisim$ index.php?sayfa=iletisim
  • 27-09-2020, 16:05:53
    #2
    aşağıdakilerde $ işaretlerini sil

    RewriteRule ^sayfa/([_A-Za-z0-9-]+)$ index.php?sayfa=sayfa&sef=$1
    RewriteRule ^servis/([_A-Za-z0-9-]+)$ index.php?sayfa=kategori&sef=$1
    RewriteRule ^satin-al/([_A-Za-z0-9-]+)$ index.php?sayfa=satinal&sef=$1
    RewriteRule ^odeme-sonuc/basarili$ index.php?sayfa=odeme_detay&durum=1
    RewriteRule ^odeme-sonuc/hata$ index.php?sayfa=odeme_detay&durum=0
    RewriteRule ^siparis-sorgula$ index.php?sayfa=siparis_sorgula
    RewriteRule ^iletisim$ index.php?sayfa=iletisim
    RewriteRule ^blog/([_A-Za-z0-9-]+)$ index.php?sayfa=makale&sef=$1

    bunda silersen çakışma olur
    RewriteRule ^blog$ index.php?sayfa=blog

    ^ işareti başlangıcı $ bitişi ifade ediyor, bitişi kaldırırsan sonunda ne olursa olsun girecektir
    • reka29
    reka29 bunu beğendi.
    1 kişi bunu beğendi.
  • 27-09-2020, 16:11:28
    #3
    Misafir adlı üyeden alıntı: mesajı görüntüle
    aşağıdakilerde $ işaretlerini sil

    RewriteRule ^sayfa/([_A-Za-z0-9-]+)$ index.php?sayfa=sayfa&sef=$1
    RewriteRule ^servis/([_A-Za-z0-9-]+)$ index.php?sayfa=kategori&sef=$1
    RewriteRule ^satin-al/([_A-Za-z0-9-]+)$ index.php?sayfa=satinal&sef=$1
    RewriteRule ^odeme-sonuc/basarili$ index.php?sayfa=odeme_detay&durum=1
    RewriteRule ^odeme-sonuc/hata$ index.php?sayfa=odeme_detay&durum=0
    RewriteRule ^siparis-sorgula$ index.php?sayfa=siparis_sorgula
    RewriteRule ^iletisim$ index.php?sayfa=iletisim
    RewriteRule ^blog/([_A-Za-z0-9-]+)$ index.php?sayfa=makale&sef=$1

    bunda silersen çakışma olur
    RewriteRule ^blog$ index.php?sayfa=blog

    ^ işareti başlangıcı $ bitişi ifade ediyor, bitişi kaldırırsan sonunda ne olursa olsun girecektir

    Teşekkür ederim.
  • 27-09-2020, 16:38:29
    #4
    yazılımınızın güvenlik kontrollerine güveniniz yok ise, herhangi bir problem yaşanmaması için;

    $ işaretini kaldırmak yerine o işareti (/)?$ şeklinde değiştirebilirsiniz

    RewriteCond %{HTTP_HOST} !^www. [NC]
    RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
    RewriteCond %{HTTPS} !=on
    RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
    RewriteRule ^blog(/)?$ index.php?sayfa=blog
    RewriteRule ^blog/([_A-Za-z0-9-]+)(/)?$ index.php?sayfa=makale&sef=$1
    RewriteRule ^sayfa/([_A-Za-z0-9-]+)(/)?$ index.php?sayfa=sayfa&sef=$1
    RewriteRule ^servis/([_A-Za-z0-9-]+)(/)?$ index.php?sayfa=kategori&sef=$1
    RewriteRule ^satin-al/([_A-Za-z0-9-]+)(/)?$ index.php?sayfa=satinal&sef=$1
    RewriteRule ^odeme-sonuc/basarili(/)?$ index.php?sayfa=odeme_detay&durum=1
    RewriteRule ^odeme-sonuc/hata(/)?$ index.php?sayfa=odeme_detay&durum=0
    RewriteRule ^siparis-sorgula(/)?$ index.php?sayfa=siparis_sorgula
    RewriteRule ^iletisim(/)?$ index.php?sayfa=iletisim

    @reka29;
    • reka29
    reka29 bunu beğendi.
    1 kişi bunu beğendi.