Pierre Greborio.NET

Talking about .NET world

Windows XP IIS limits

Windows XP professional contains also IIS. The only serious limitation for a developer machine is the abiliy to develop multiple web site instead of virtual directories. With a web site it 's easiest to develop, since the paths of images, styles, etc. can be referred to the root (starting wih /). The root of virtual directories isn't the root of the web application.

Waiting for a solution (?) I'll use Cassini :-)

Comments

Damian said:

I wrote a script to quickly remap the root, fairly quick to switch projects

http://blog.madant.com.au/archive/2004/02/01/551.aspx

# April 27, 2004 7:31 AM

Pierre Greborio said:

I thought about that solution, but what happens if you have two web projects ? I mean an ASP.NET web application calling a Web Service application ? You should have two web sites as well.
# April 27, 2004 8:03 AM

William Bartholomew said:

The "ideal" solution is to write your applications so that don't rely being in the root directory. This way they will work from a virtual directory. There are a number of ways to do this:

1. In server controls you can use ~ to represent the application root, for instance, ~/images will always point to the images directory under the application root.

2. You can add an appSetting with the path to the root of the application.

3. You can use the AppRoot property to determine the application root directly.
# April 27, 2004 8:31 AM

Pierre Greborio said:

That's interestig, but you have to edit all properties set by VS.NET manually. It isn't an issue, but you have to remember it (ie. when you drag&drop the user control to a web form).

More over, some problems still persists with HTML controls
# April 27, 2004 9:14 AM

Marco Trova said:

# April 27, 2004 9:34 AM

Paul Murray said:

You can have more than 1 website on an IIS with an XP Pro box, you just can't run more than 1 website and you can't use the GUI to add the additional sites. Checkout this article for a script that you can run that will create an additional website for you. http://www.iisfaq.com/Articles/391/




# April 27, 2004 9:37 AM

Jim Bolla said:

http://www.mindxpand.be/iisadmin/

I use this tool to configure multiple sites under XP Pro. you can still only run one at a time but for most of our development scenarios this is enough.
# April 27, 2004 10:23 AM

Jon Galloway said:

There are at least 2 ISAPI filters that will direct traffic to multiple websites on XP Pro:
http://www.hairy-spider.com/multisite.aspx
http://h4ck3r.net/ (scroll to IIS MultiPlex)
# April 27, 2004 11:51 AM

Jon Galloway said:

Note that the ISAPI filters I listed simulate multiple websites running, but it's not the same thing, since the virtual websites don't support different configuration such as different mime types, default documents, etc.
# April 27, 2004 12:22 PM

Kiliman said:

I wrote CassiniEx to specifically allow a developer to create multiple web sites and create ROOT web apps. It is configured similar to IIS in that you define web sites with one or more bindings (hostheader:port combinations). Each web site can have multiple web apps and virtual folders as well. You can define default documents, allow/deny extensions, allow remote connections, allow directory browsing, etc.

I'm finishing up a management console that looks suspiciously like the IIS 6 MMC. Another developer using CassiniEx recently sent me a patch to support NT Authentication.

My goal is to have all the functionality a developer needs to create web apps on their local machine.

Kiliman

http://www.systemex.net/CassiniEx/
# April 28, 2004 8:10 AM

Pierre Greborio said:

CassiniEx is really an excelent work. The only problem I have is with e debugging session from VS.NET. Is there any tips ?

Thanks
# April 28, 2004 8:26 AM

Kiliman said:

To debug from VS.NET, you need to select Debug | Processess... and attach to the CassiniExWebServer.exe. Once you've attached, any breakpoints you set for your web app will be active.

One caveat: unlike in VS.NET with IIS, when you press Stop Debugging, your web app shuts down. With CassiniEx, Stop Debugging will simply detach from the web server and your web app will continue to run.

This may cause problems if you're debugging and you get to a point where you know there's a bug and you don't want to continue. If you simply press Stop, VS.NET will detach but your web app will continue running from where you left off, possibly causing problems like corrupt data, etc.

My suggestion is to either "Set Next Statement" to skip to the end of your page request. Or simply shut down the CassiniEx process.

I'd really like to figure out how to handle the DEBUG verb that VS.NET sends when debugging and have CassiniEx automatically attach to the running debugger. This way it would work just like VS.NET/IIS.

Kiliman
# April 28, 2004 11:04 AM

Pierre Greborio said:

Yes, manage the DEBUG verb is very useful. Visual Studio .net 2005 tech preview contains, by default a web server similar to Cassini. We have to investigate.

Thanks
# April 28, 2004 11:21 AM