(我之前曾问过类似的问题,但这是一个更具体的问题,这就是为什么我开始一个新线程。)
我正处于一个asp.net项目的开头,我可能会使用url重写器。 (第一次)
我有几个用户拥有单独的子域名。在每个子域名中,每个用户都有各自的类别,子类别和页面。例如,用户网页可能如下所示:
user1.mydomain.com/category1/sub1/page1
user1.mydomain.com/category1/sub2/page45
user1.mydomain.com/category1/page123
user1.mydomain.com/category2/sub56/page134
如您所知,这些分类和页面是动态的,我想使用url重写。 但是由于用户数量很大,我不想要一个巨大的urlrewrites列表。
所以我的问题是。
是否可以多次重写URL? 首先,Web应用程序检查子域,它为wep页面提供了一些ID。
user1.mydomain.com/category1/page1.aspx -> users.mydomain.com/category1/page1.aspx?accountID=1
然后取决于,在这种情况下,accountID检查正确的“url重写查找表”
类似的东西:
account1_url_list
account2_url_list
...
为“pretty-url”的其余部分获取正确的网址,在本例中为“/ category1”
我猜web.config文件无法处理这么多的url-rewrites?
另外一个问题。
当其中一个用户将自己的域指向我的网页应用程序页面时,urlrewrite会发生什么? 因此,Internet Explorer中的地址栏或firefox就像:
www.user.com points at user1.mydomain.com
我能够获得该用户的正确ID吗?
谢谢! 磨砂
感谢您的回复。 不幸的是,我认为我无法在IIS上运行网址重写。只有某种o .net重写者喜欢 www.urlrewriting.net
我有一个问题,有人将自己的域名指向我的网络应用程序。 是否可以使用“user1。”,“user2”子域名来匹配用户到他的帐户,或者我还必须在此过程中使用他的域名来查找他的帐户ID?
Lets say user1 owns a domainname. www.user1domain.com
he points that domain to user1.mydomain.com
so the visible url is www.user1domain.com.
会发生什么?
是否有一些命令可以找到他的域所指向的子域名?
谢谢!
答案 0 :(得分:0)
是的,URL重写器支持多个处理步骤,正如Eok在他的博客文章中讨论的有关处理链和继续或停止处理的步骤:http://blogs.iis.net/eokim/archive/2008/06/05/url-rewrite-module-basic-understanding-lt-rule-gt.aspx
web.config可以处理非常大的数量或重写规则(我实际上并不知道有多少,但测试可能会很有趣!)。
如果您有超过十几条规则,那么您可能会遇到可以重构和简化的问题。