URL yolunda karma karakter (#) göndermem gereken bir PHP projem var. (http://www.example.com/parameter#23/parameter#67/index.php) Üretilen kodun karmayı% 23Karma karakterler içeren yolları sorgu dizelerine dönüştürmek için mod_rewrite özelliğini kullanma
'a dönüştürmesine izin vereceğini düşünmekteyim. Ancak şimdi, urlencoded hash bile tarayıcıyı her şeyi URL fragmanı (veya sorgu) olarak sağa doğru işlemeye zorladığını görüyorum.
Çatışmayı geçmek için bir yol var mı, yoksa urlen kodundan önce bir karakter değişimi yapmam gerekiyor mu?
Düzenleme (2017 Eyl 19) eklemek için:
Ben yanlış soruyu soruyordu çıkıyor. Sorunum, yol içindeki karma karakterin kullanılmasıyla (kodlama çalışması işe yaramazsa) değil, bir sorgu dizesine dönüştürmek için mod_rewrite kullanılmasında değildi. RewriteRule içinde yeniden kodlamayı başaramamıştım. Başlığı eşleşecek şekilde düzenleyeceğim. İşte
ben kullanıyordum yeniden yazma kuralı: I B etiketi ekledi kısa süredeRewriteEngine On
# convert path strings into query strings
RewriteRule "^(.*)/(.*)/hashtags.php" /hashtags.php?parameter_1=$1&parameter_2=$2 [QSA,L]
, doğru çalıştı:
RewriteEngine On
# convert path strings into query strings
RewriteRule "^(.*)/(.*)/hashtags.php" /hashtags.php?parameter_1=$1&parameter_2=$2 [QSA,L,B]
Bu URL'yi hangi yöntemle kullanıyorsunuz? – Gumbo
Üretilen kodun bunu% 23 olarak değiştirmesi gerektiğine inanıyorum, örnek bir kod verebilir misiniz? –
Dinamik olarak oluşturulmuş PDF'lere statik bağlantılar oluşturuyorum. Yol öğelerini $ _GET içine geçirmek için modrewrite kullanıyorum. PDF'yi oluşturmak için gereken ürün parrametreleridir. Ürünlerin bazılarında ürün adlarında karma etiketler var. – Mark