rewriterule nasıl bitmeyen eğik çizgi

Bir dizine gelen herhangi bir şeyi başka birine yönlendirmeye çalışıyorum. kullandığım rewriterule komutu:

RewriteRule ^VirtualDirectory(.*)$ GENS/RealDirectory$1 [L,NC]

Sorun şu ki, VirtualDirectory için bir sorgulama yokmuş gibi bir sorguyu istiyorum.

Benim aldığım davranış:

VirtualDirectory sorgusu/kullanıcı fark etmeden harika çalışıyor VirtualDirectory iş parçacığı sorgulama büyük ama brwoser gösterilen url: GENS/RealDirectory /

Birçok şeyi denedim ama istediğim davranışı alamıyorum.

Bir kural eklersek

RewriteRule ^VirtualDirectory$ GENS/RealDirectory/ [L,NC]

Bu özel durumu ele almak için, sayfanın tüm kaynaklarının VirtualDirectory önce klasöre yeniden yazılması dışında harika çalışır

0

1 cevap

Ne oluyor, dahili bir yeniden yazma, bir eğik çizgi olmadan gerçekleşiyor, daha sonra mod_dir devraldı ve bir tarayıcı aynı URL'ye yönlendiriyor, ancak bir ters eğik çizgi ile. Mod_dizini .htaccess dosyanızdaki DirectorySlash Off kullanarak kapatabilirsiniz. Takip eden eğik çizgi her zaman isterseniz, kuralı şuna değiştirmeyi deneyin:

RewriteRule ^VirtualDirectory/?(.*)$ GENS/RealDirectory/$1 [L,NC]
0
katma
Cevap için teşekkürler. DirectorySlash Off bir Dahili Sunucu Hatası tetikler. Bunu açıklarsam ve sağladığınız kuralı kullanırsam, yeniden yazma işlemi harika olur, ancak sadece web sayfası için. Tüm kaynaklar (resimler, ...), bunun yerine mywebsite.fr/myhtaccessDirectory 'a yeniden yazılmıştır (?). mywebsite.fr/myhtaccessDirectory/GENS/RealDirectory
katma yazar user1018233, kaynak