htaccess rewrite göreceli yolları kırıyor
http://www.myserver.com/home/ile
http://www.myserver.com/index.php?section=home
arasındaki haritaları gösteren bir htaccess dosyası var. Şu anda karşı karşıya olduğum sorun, tüm görüntüleri ve css varlıklar, yani
http://www.myserver.com/assets/images/
http://www.myserver.com/assets/css/vb
adında bir alt klasörde yer almaktadır. Yeniden yönlendirme sonra tarayıcı
http://www.myserver.com/home/assets/images/altındaki dosyaları arayacaktır, Bu geçerli bir yol değil.
Yukarıdakileri doğru alt klasöre eşleyen başka bir yeniden yazma ekleyebildim, ancak Firebug görüntülerin içinde bulunduğunu gösteriyor:
http://www.myserver.com/home/assets/images/
Bunun gerçekten sorun olmadığını biliyorum, sonuçta, Resimlerim ve css bu kural ile gayet iyi yükleniyor. Sadece gerçek yol olarak gösterilen yolu nasıl yapacağımı merak ediyorum:
http://www.myserver.com/assets/images/
Aşağıdaki htaccess dosyasımı yapıştırıyorum. Önceden çok teşekkür ederim.
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^([^/]+)/assets/(css|images|js)/(.*)$ /assets/$2/$3 [NC,L]
RewriteRule ^([^/]+)/$ /index.php?section=$1 [NC,L]
, ben Sadece şimdi olabilir. Sonra tekrar,
etiketini tamamen unuttum! Büyüleyici bir şekilde çalıştı. Teşekkürler Gumbo, takdir et. – irot@irot: Yine, "BASE" kullanarak temel URI'yi değiştirmenin, yalnızca göreli yollara sahip olanları değil, tüm * göreli URI'ları etkilediğini unutmayın. – Gumbo
Ayrıca, çapa etiketlerini karma ile de etkiler. "#content" gibi bir href özelliğine sahip herhangi bir çapa etiketi, geçerli sayfaya değil, temel URL'ye çözülür. Tüm bunlara yeni – VirtuosiMedia