ISAPI اعادة صياغة حكم مساعدة (http://www.foo.com/bar -> http://www.foo.com/bar.aspx)

StackOverflow https://stackoverflow.com/questions/1618856

سؤال

وهناك واحد من السهل حقا، ولكن أنا بحاجة للحصول على هذا الحق، وليس بوسع الأخطاء وأنا في حاجة إلى نشر على الخادم يعيش في أقرب وقت أستطيع.

http://www.foo.com/bar --> http://www.foo.com/bar.aspx
http://www.foo.com/bar?q=boo --> http://www.foo.com/bar.aspx?q=boo

# I only want /bar to get rewritten to /bar.aspx
# everything else stays as is
http://www.foo.com/bar.aspx --> http://www.foo.com/bar.aspx
http://www.foo.com/bar.pdf --> http://www.foo.com/bar.pdf  

وصلت إلى هنا، ولكن هذا يتحول إلى bar.aspx bar.aspx.aspx، وهذا ليس جيدا.

# Helicon ISAPI_Rewrite configuration file

RewriteEngine on
RewriteRule (.*) $1.aspx [L]
هل كانت مفيدة؟

المحلول

جرب هذه القاعدة:

RewriteCond $1 !.*\.aspx$
RewriteRule (.*) $1.aspx [L]

وهذا يجب تجنب أي مشاكل محتملة مع العودية. وإذا كنت تريد استبعاد الملفات الموجودة بالفعل، حاول هذا الشرط بدلا من ذلك:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) $1.aspx [L]
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top