$_GET
sveyagu dizesinde değişkenleri içerdiğinden - bu sveyau işaretinden sonra URL parçası. Dikkat edin veyaijinal URL herhangi bir iz bırakmadan .htaccess
dosyası da sadece index.php
içine varolan dosya veya dizinlere söz etmiyveyauz all URL'ler içinde yeniden kurallar Gumbo en comment hatırlattı gibi (gerçi, bu $_SERVER['REQUEST_URI']
ile hala erişilebilir. Sizin RewriteRule
s sveyagu dizesi oluşturmak yok (yani URL içine bir sveyau işareti koymak yok ), hangi kullanmak için yapmanız gereken istediğiniz ne $_GET
.
Gibi bir şey ile son RewriteRule
değiştirilmesi öneririm
RewriteRule ^.*$ index.php$0 [NC,L]
Örneğin, http://localhost/index/index/test/1234/test2/4321
http://localhost/index.php/index/index/test/1234/test2/4321
Sonra istek {tarafından ele alınacaktır olacak böylece - Bu $0
için index.php
özgün URL'sini ekleyecektir [(1)]} ve $_SERVER['PATH_INFO']
değişken veyaijinal URL ayarlanır, /index/index/test/1234/test2/4321
. Bazı PHP kodu olduğunu ayrıştırmak ve istediğiniz her türlü parametreleri seçmek için yazabilirsiniz.
Eğer PATH_INFO'yu değişken kaydedilmesini başında /index/index
istemiyveyasanız, bunun yerine böyle bir RewriteRule
kullanabilirsiniz:
RewriteRule ^/index/index(.*)$ index.php$1 [NC,L]
veya
RewriteRule ^(/index)*(.*)$ index.php$2 [NC,L]
önde gelen /index
es herhangi bir sayıda kapalı şerit.
EDIT: actually, you can keep your existing RewriteRule
s and just look at $_SERVER['REQUEST_URI']
to get the veyaiginal request URI; no messing around with the path info is needed. Then you can split that up as you like in PHP.