คำถามติดแท็ก querystring

1
Apache mod_rewrite ดับเบิลเข้ารหัสสตริงแบบสอบถามเมื่อเปลี่ยนเส้นทาง
เราพบปัญหาแปลก ๆ (ข้อผิดพลาดหรืออาจ?) กับพฤติกรรมของ Apache mod_rewrite เมื่อผ่านสตริงการสืบค้น ในการทำซ้ำเราได้ติดตั้ง Ubuntu แบบติดตั้ง (oneiric) ที่สะอาดพร้อมการกำหนดค่าเริ่มต้นของ Apache เราได้เปิดใช้งาน mod_rewrite และในการกำหนดค่าไซต์เริ่มต้นเราได้เพิ่มสิ่งต่อไปนี้: RewriteEngine on RewriteRule ^/(.*)$ /r/$1 [R] ในการทดสอบเราใช้ curl: curl -I 'http://[ubuntu-machine]/a/b%20c?a%20b' ผลลัพธ์ที่เกี่ยวข้องคือ: HTTP/1.1 302 Found Server: Apache/2.2.20 (Ubuntu) Location: http://[ubuntu-machine]/r/a/b%20c?a%2520b อย่างที่คุณเห็นสตริงเคียวรีจะถูก Escape สองครั้งซึ่งผิด ไม่มีใครมีความคิดว่าเราจะแก้ไขได้อย่างไร สองสิ่งที่เราได้ลอง: กำลังเพิ่ม [NE] สิ่งนี้ทำให้เรามีสตริงการสืบค้นที่ถูกต้อง แต่ไม่มีการใช้พา ธ ซึ่งทำให้เกิดปัญหาใหม่ กำลังเพิ่ม [NE, B] …

4
URL ที่เขียนซ้ำที่มีความยาวพารามิเตอร์> 255 ไม่ทำงาน
ฉันใช้ mod_rewrite เพื่อเขียน URL เช่นนี้: http://example.com/1,2,3,4/foo/ โดยทำสิ่งนี้ใน. htaccess: RewriteEngine On RewriteRule ^([\d,]+)/foo/$ /foo.php?id=$1 [L,QSA] มันทำงานได้ดียกเว้นเมื่อ "1,2,3,4" เปลี่ยนเป็นสตริงที่มีความยาวมากกว่า 255 ตัวอักษร Apache จะส่งคืน "403 Forbidden" ไม่มีปัญหาในการเยี่ยมชมfoo.php?id=1,2,3,4โดยตรงแม้จะมีสตริง id ยาวมาก แต่นี่ไม่ใช่ตัวเลือกสำหรับฉัน มี Apache หรือการตั้งค่าอื่น ๆ ที่ฉันควรปรับแต่งหรือไม่? อัปเดต : ฉันเปิด RewriteLog ด้วย RewriteLogLevel 9. ด้วยสตริง id สั้น ๆ ฉันได้หลายบรรทัดในไฟล์บันทึกของฉัน แต่เมื่อสตริง id มากกว่า 255 ตัวอักษรไม่มีสิ่งใดที่ถูกบันทึกไว้ (ดูเหมือนว่า …

2
Nginx Rewrite แปลง Querystring เป็น Path
ฉันต้องการกฎการเขียนซ้ำง่าย ๆ นี้: /somefolder/mypage.aspx?myid=4343&tab=overview ที่จะเปลี่ยนเส้นทางไปที่: /folder/4343/overview/ ฉันมองหาวิธีแก้ปัญหาและไม่มีใครทำงานได้จริง .. ฉันเหนื่อย: rewrite ^/somefolder/mypage.aspx?myid=(.*)&tab=overview$ /folder/$1/overview permanent; และ rewrite ^/somefolder/mypage\.aspx\?myid=(.*)&tab=overview$ /folder/$1/overview permanent; ผมทำอะไรผิดหรือเปล่า? ฉันได้รับ 404 (กฎที่ง่ายกว่าทำงานได้ดี .. ) ขอบคุณ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.