bir php dosyası için birden fazla dizin mod_rewrite

3 Cevap php
RewriteEngine on
RewriteRule ^/(dir1|dir2|dir3)/(.*)$ /targetfile.php [R,L]

http://www.somesite.com/dir1 -> http://www.somesite.com/targetfile.php
http://www.somesite.com/dir2 -> http://www.somesite.com/targetfile.php
http://www.somesite.com/dir3 -> http://www.somesite.com/targetfile.php

Ben çevrimiçi gördüğüm kadarıyla, bu çalışması gerekir. Ne yazık ki, bu alışkanlık. Herhangi bir fikir?

3 Cevap

Eğer bir. Htaccess dosyasında bu kullanmak istiyorsanız, desen önde eğik çizgi çıkarın. Ve sadece tam yol parçaları maç, sen ifadeyi biraz değiştirmek zorunda.

Yani bu deneyin:

RewriteEngine on
RewriteRule ^(dir1|dir2|dir3)(/|$) targetfile.php [R,L]

Ben size sonra eğik çizgi gerektiren bunu sınırlamak istemiyorsanız eğik çizgi, gerekli inanmıyorum "dir1."

Try: RewriteRule ^(dir1|dir2|dir3)$ targetfile.php [QSA,L]

Ben sorun düzenli ifade dizin adı (örneğin / dir1 /) sonra bir bölü zorunlu, ama örnekte son çizgi (http://www.somesite.com/dir1 eğik çizgi yok) ihmal olduğunu düşünüyorum.

Ben sadece deneyin düşünüyorum

RewriteRule ^/(dir[1-3]) /targetfile.php [R,L]