Как переписать URL-адрес в ASP.NET?URL-адрес URL-адреса ASP.NET
Я хотел бы, чтобы пользователи могли с Гото http://www.website.com/users/smith вместо http://www.website.com/?user=smith
Как переписать URL-адрес в ASP.NET?URL-адрес URL-адреса ASP.NET
Я хотел бы, чтобы пользователи могли с Гото http://www.website.com/users/smith вместо http://www.website.com/?user=smith
Попробуйте Managed Fusion Url Rewriter и Reverse Proxy:
http://urlrewriter.codeplex.com
правило для переписывания это будет до:
# clean up old rules and forward to new URL
RewriteRule ^/?user=(.*) /users/$1 [NC,R=301]
# rewrite the rule internally
RewriteRule ^/users/(.*) /?user=$1 [NC,L]
Предложение: я бы отрегулировал первый RewriteRule, чтобы выглядеть как^/? users = (\ w *), чтобы http://www.website.com/?users=smith&day=monday не производил http://www.website.com/users/smith&day=monday – Dscoduc 2009-02-06 17:13:32
Это хорошая идея и полностью поддерживается в этой версии .NET. Первоначальное намерение состояло в том, чтобы сделать мой пример совместимым с mod_rewrite, который не поддерживает этот синтаксис. – 2009-05-26 16:14:42
Это потрясающе. – 2009-08-16 07:52:53
Скотт Гатри рассказывает, как сделать это изначально в .Net довольно широко here.
Я использовал подход httpmodule, и он работает хорошо. Это в основном то, что ManagedFusion делает для вас.
Я использовал HttpModule для перезаписи URL из www.urlrewriting.net с большим успехом (хотя я считаю, гораздо раньше, более простой вариант)
Если у вас очень мало фактических правила переписывания то адрес отображение, встроенное в .NET 2.0 являются вероятно, это более простой вариант, есть несколько записей в Интернете, 4guysfromrolla кажется довольно исчерпывающим, но, как вы видите, они не поддерживают сопоставления регулярных выражений, как таковые оказываются бесполезными в динамической среде (предполагая, что " кузнец "в вашем примере не является особым случаем, тогда это было бы бесполезно)
Microsoft теперь отправляет официальный URL-адрес Модификации ule для IIS: http://www.iis.net/download/urlrewrite
Он поддерживает большинство типов перезаписи, включая настройки переменных сервера и подстановочных знаков.
Он также будет существовать на всех веб-сайтах Azure из коробки.
Пошаговое объяснение следует по следующей ссылке: http://challadotnetfaq.blogspot.com/2011/08/url-rewritting-in-aspnet.html – 2011-08-03 12:26:13