I am getting problem in URL rewrite rules.
I am used UrlRewritingNet.UrlRewriter Dll for Url rewriting in asp.net website.
I used rules name as "Advanced"
& Other rule name as DefaultRule that is used for any user profile page(ie. any user's profile page).
When I entered username as "AdvancedMachinesTools".
That Rules as below:-
<urlrewritingnet rewriteOnlyVirtualUrls="true" contextItemsPrefix="QueryString" defaultPage="Login" xmlns="http://www.urlrewriting.net/schemas/config/2006/07">
<rewrites>
<add name="advanced" virtualUrl="^~/advanced" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/advancedSearch.aspx" ignoreCase="true" />
<add name="DefaultRule" virtualUrl="^~/(.*)" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/UserProfile.aspx?uname=$1" ignoreCase="true"/>
</rewrites>
</urlrewritingnet>
I got error message "File does not exist" I wrote DefaultRule at last in web.config file.
How I resolved it...?
EDITED
Examples
Suppose that my website url: www.abcd.com
1) For advanced rule I wrote URL like this www.abcd.com/advanced
Rule:
<add name="advanced" virtualUrl="^~/advanced" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/advancedSearch.aspx" ignoreCase="true" />
2) for Default user rule for suppose username: AdvancedEyecare it used default rule
<add name="DefaultRule" virtualUrl="^~/(.*)" rewriteUrlParameter="ExcludeFromClientQueryString" destinationUrl="~/UserProfile.aspx?uname=$1" ignoreCase="true"/>
When I enter url like http://www.abcd.com/AdvancedEyecare
Then I got error "File not exist" because Rule used 1 advanced rule not used user default rule. I want to call userrule instead of 1 advanced rule.
How can solve it?