RewriteEngine On Rewrite Rule ^test/ (a[a-zA-Z0-9]+)$ index.php?topic=$1 # Yukarıdaki ifade ile web sitenizdeki tüm URL'ler # www.siteniz.com/test/sayfa-URL biçimine dönüşür.
htaccess ile seo dostu url yardim istiyorum
4
●78
- 26-03-2021, 17:09:32bir sitede aşağıdakini buldum ancak hata veriyor. yapmak istediğim deneme.com/super-fm yazıldığında deneme.com/radyolar.php?radyo=super-fm çağırmasıdır yardımcı olursanız sevinirim.
- 26-03-2021, 17:17:51Birebir eşleme için kullanabilirsin
Options +FollowSymLinks RewriteEngine On RewriteRule ^super-fm$ radyolar.php?radyo=super-fm
Alternatif olarak farklı parametreler için kullanacaksan
Options +FollowSymLinks RewriteEngine On RewriteRule ^([a-zA-Z0-9-]+)$ radyolar.php?radyo=$1
- 26-03-2021, 17:27:19çok teşekkürler alttakini yaptığımda peki
radyolar.php?radyo=super-fm
kanallar.php?kanal=atv
diziler.php?dizi=kuzey-yildizi
de olacak onu nasıl çoklu hale getirebilirim
ardakaracayir adlı üyeden alıntı: mesajı görüntüle - 26-03-2021, 19:23:55htaccess kuralını bu şekilde yaparsanız her farklı url'de yeni bir htaccess kuralı yazmak zorunda kalırsınız, bunun yerine bu işi biraz dinamikleştirmek için şu yöntemi uygulayabilirsiniz.
RewriteEngine On RewriteRule ^([a-zA-Z0-9-_/]+)$ index.php [QSA]
öncelikle yukarıda gibi bir htaccess tanımlamanız olur burada biz index.php dosyamızda get ile gelen tüm istekleri alıyoruz.
$routeExplode = explode('?', $_SERVER['REQUEST_URI']); $route = array_values(array_filter(explode('/', $routeExplode[0])));şimdi tüm url'i aldığımız için bunu parçalayalım ki istediğimiz url'e istediğimiz dosyayı çalıştıralım diye, bu işlemin ardından $route değişkeninde sizin url'den gelen datalar olur.
Örnek : localhost/test-ediyorum
echo $route[0]; //test-ediyorum
Örnek-2 : localhost/yeni-bir-baslik/23
echo $route[1]; // 23
vs vs. böylelikle artık her defasında yeni bir kural yazmak yerine url'e göre istediğiniz dosyaları çalıştrabilirsiniz - 26-03-2021, 19:46:13EdirneHaber adlı üyeden alıntı: mesajı görüntüle
Options +FollowSymLinks RewriteEngine On RewriteRule ^super-fm$ radyolar.php?radyo=super-fm RewriteRule ^atv$ kanallar.php?kanal=atv RewriteRule ^kuzey-yildizi$ diziler.php?dizi=kuzey-yildizi
Alternatif
Options +FollowSymLinks RewriteEngine On RewriteRule ^diziler/([a-zA-Z0-9-]+)$ diziler.php?dizi=$1 // PHP ile GET Methodu ile alabilirsin $dizi = $_GET['dizi'];