Seo Dostu URL, CSS IMG ve JS'nin çalışmamasına neden oluyor
URL'mi SEO Dostu URL yapmak istiyorum. .htaccessKuralı yeniden yazarak dosyayı düzenlemeyi denedim
RewriteRule ^swift-details/([0-9]+)/([0-9a-zA-Z_-]+)$ swift-details.php?id=$1 [NC,L]
RewriteRule ^swift-details/(css|js|img)/(.*)?$ /$1/$2 [L,QSA,R=301]
Doğru URL'yi yönlendiriyor ancak bu sayfada CSS JS ve resimler çalışmıyor.
Örnek URL:
http://www.example.com/swift-details/2/abblinbb
Yanıtlar
İkinci yeniden yazma kuralına ihtiyacınız yok. CSS / JS yollarınızın tümü mevcut konumunuzla 'görelidir'.
CSS'niz burada mevcuttur: /css/normalize.css
Sayfanız buraya bakıyor: /swift-details/2/abblinbb/css/normalize.css
İhtiyacınız olan tek şey, CSS / JS yollarınızdan önce "eğik çizgiler" dir.
Bunun nedeni, göreceli URI'lerinizin tabanının değişmiş olmasıdır. Başlangıçta temel, /sayfanın olduğu /swift-details.php?id=foozamandır ve tarayıcı, temelle göreli bağlantıları düzgün bir şekilde doldurur /. Ancak tarayıcı /swift/details/foo, taban gibi bir sayfaya gittiğinde aniden olur /swift/ve bunu tüm ilgili URL'lerin önüne eklemeye çalışır ve dolayısıyla hiçbiri yüklenmez.
Bağlantılarınızı mutlak hale getirebilir veya sayfalarınızın başlığındaki ( <head> </head>etiketlerin arasında) URI tabanını değiştirebilirsiniz :
<base href="/">