Seo Dostu URL, CSS IMG ve JS'nin çalışmamasına neden oluyor

Jul 06 2015

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

5 MaggsWeb Jul 06 2015 at 16:08

İ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.

10 AmitVerma Jul 06 2015 at 16:18

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="/">