views:

307

answers:

4

I am developing an application in classical ASP that now requires sef urls. I do not have any asp.net experience but I've heard that ASP.NET+IIS6 provide built-in url rewriting functionality. So before i have someone purchase a url rewriting component for me, I am wondering if it is possible to use the ASP.NET/IIS6 url rewriting functionality in a ASP classical application?

If this is possible, please post in a sample web.config file for the following urls so that I can test it immediately:

/Country/State/City/Area/Rental-1234/
/Country/State/City/Area/Rental-1234/Photos

become:

/rental-detail.asp?rental_id=1234
/rental-photos.asp?rental_id=1234

Edit ----

The webserver is an IIS6 server running on Windows 2003 Server. If its possible to use IIS7's url rewriting functionality then my next question is how easy is it to upgrade from IIS6 to IIS7. Is a service pack upgrade sufficient for this task?

+1  A: 

I believe it's same question of this : http://stackoverflow.com/questions/1468930/how-to-implement-url-rewriting-in-classic-asp

Hope you can find your answer there :)

Braveyard
so its better you put this as a comment, not an answer ;)
Amr ElGarhy
+1  A: 

Yes it is possible, but for IIS6 you need a third-party URL rewriting module like IsapiRewrite.

http://www.isapirewrite.com/

Robert Harvey
I've confirmed from the network admin, the server is a windows 2003 server with IIS6. I've edited the question.
Salman A
+1  A: 

You can't upgrade IIS6 to IIS7. Each version is tied to the version of the operating system. Hence to upgrade to IIS7 you need to upgrade the server to Server 2008.

AnthonyWJones
+1  A: 

For URL Rewriting in IIS5, IIS6, or IIS7, you can run IIRF .

  • It works with PHP, ASP, ASPNET, JSP, or whatever you run on IIS.
  • it's free, open source
  • config syntax like mod_rewrite
  • can use regular expressions in the patterns
  • can use a different config for each IIS Application
  • in addition to rewriting URLs, you can rewrite arbitrary request headers.
  • also does transparent (reverse) proxy. (ProxyPass)
Cheeso
"Can use a different config for each IIS Application"... strange... this wasn't mentioned in the documentation 2 weeks ago and its the only missing feature that kept me from using IIRF.
Salman A
IIRF v2.0 does this. IIRF v1.2 does not. The doc is available at http://cheeso.members.winisp.net/Iirf20help/
Cheeso