ฉันสามารถสร้าง URL ที่สะอาดโดยใช้ WebBroker และ Delphi ได้หรือไม่

ฉันสามารถสร้าง URL ที่สะอาดสำหรับหน้าเว็บ/แอปพลิเคชัน WebBroker ได้หรือไม่

โดยปกติ URL ของเว็บโบรคเกอร์จะมีลักษณะดังนี้:

hxxp://www.mywebsite.com/myapp.dll?name=fred

or

hxxp://www.mywebsite.com/myapp.dll/names/fred

สิ่งที่ฉันต้องการคือ:

hxxp://www.mywebsite.com/names/fred

มีความคิดใดที่ฉันจะบรรลุเป้าหมายนี้ด้วย Delphi/WebBroker ได้อย่างไร (ISAPI/อาปาเช่)


person Andrew Tierney    schedule 14.10.2010    source แหล่งที่มา


คำตอบ (1)


วิธีทั่วไปในการทำเช่นนี้คือการใช้ mod_rewrite ของ apache เพื่อเปลี่ยนเส้นทางคำขอไปยัง url ด้วยพารามิเตอร์ แอปพลิเคชันจำนวนมากทำเช่นนี้เพื่อสร้าง URL ที่ "มนุษย์สามารถอ่านได้" และเป็นมิตรกับเครื่องมือค้นหามากขึ้น

ตัวอย่างเช่น คุณอาจเพิ่มกฎนี้เพื่อทำให้ action=sales&year=2009 ดูเหมือน sales-2009.htm:

RewriteRule ^sales-2009.htm?$ index.php?action=sales&y=2009 [L]

เมื่อผู้ใช้ไปที่ 'sales-2009.htm' ระบบจะเปลี่ยนเส้นทางไปยังหน้า php พร้อมด้วยพารามิเตอร์ที่เหมาะสม สำหรับผู้ใช้ปลายทาง จะยังคงแสดง sales-2009.htm ในแถบ URL ของเบราว์เซอร์

แน่นอนคุณสามารถใช้นิพจน์ทั่วไปด้วย mod_rewrite ซึ่งจะทำให้การเปลี่ยนเส้นทางมีความยืดหยุ่นมากขึ้น ตัวอย่างเช่น คุณสามารถสร้างนิพจน์เดียวในตัวอย่างข้างต้นที่จะแมปปีใดๆ กับพารามิเตอร์ที่ถูกต้อง

person GrandmasterB    schedule 14.10.2010
comment
การเขียน URL ใหม่ไม่ได้มีเฉพาะบน Apache เท่านั้น แต่บน IIS ด้วยเช่นกัน แน่นอนสำหรับ IIS7 คุณเพียงแค่ต้องติดตั้งโมดูล URLRewrite ตามที่ MS เสนอให้เอง iis.net/download/URLRewrite - person Marjan Venema; 14.10.2010