UltiDev Cassini Web Server is a light-weight redistributable web server software for Microsoft Windows capable of simultaneously serving multiple ASP.NET applications and static HTML. Unlike Internet Information Services UltiDev Cassini can run on Windows Operating Systems which do not support IIS. UltiDev Cassini is based on the original Microsoft Cassini sample.
With Microsoft’s push into enterprise software realm in late 1990s, its web application technologies have become popular starting with the introduction of Active Server Pages (ASP) server-side scripting technology, and then with ASP.NET – a web application related subset of Microsoft .NET Framework. ASP.NET itself does not have a built-in HTTP request processor, which means it needs to be underpinned by web server software. In most cases such web server is IIS. Even though IIS is free, it’s not ubiquitous. IIS is not installed out of the box on consumer versions of Windows, like Windows XP. IIS cannot be installed at all on Windows XP Home Edition.
These factors have limited the reach of ASP.NET applications to mostly enterprise-level setups run by professional IT staff. Despite the fact that web-based applications have become very well-understood and therefore very popular among users, web applications for consumers and small companies remain fairly unusual due to many limitations, one of which is the lack of easily redistributable and maintainable web server software. To address the issue ASP.NET developers started using a shared source version of a simple web server called ASP.NET Cassini Sample Web Server made by Microsoft and able of serving static HTML pages and ASP.NET 1.1 applications. Cassini, Sample Web Server can run in the context of interactive (explicitly logged-in) user account and can run one ASP.NET application per server process instance. Cassini Sample Web Server comes with source code and thus can be made a part of a redistributable application package by writing program code, but it does not include any self-installing redistributable components, like a Microsoft Installer package or a Merge Module. Also, ASP.NET Cassini Sample Web Server does not have any user console for registering and configuring ASP.NET applications.
UltiDev Cassini Web Server is functionally between the powerful but not redistributable IIS, and a somewhat redistributable but rather limited Cassini Sample Web Server. UltiDev Cassini Web Server uses Cassini Sample Web Server source code for request processing, however UltiDev Cassini Web Server can run multiple ASP.NET applications and static web sites at once; it runs as a windows service; and it has an application management console. Unlike IIS or Cassini Sample Web Server, UltiDev Cassini is redistributable by means of plugging the UltiDev Cassini Web Server for ASP.NET 2.0 & 3.5 redistributable component into the list of Visual Studio 2005 and Visual Studio 2008 setup project prerequisites. For the case of Visual Studio .NET 2003 and ASP.NET 1.1, UltiDev Cassini Web Server for ASP.NET 1.1 includes a Setup.exe bootstrapper that includes UltiDev Cassini Web Server runtime components and replaces the original bootstrapper generated by the Visual Studio.
UltiDev Cassini: Web Server for ASP.NET Developers
UltiDev Cassini Web Server’s primary focus is developers rather than operations staff. In addition to integrating Cassini redistributable components with Visual Studio 2005 and 2008, ASP.NET applications can be registered and unregistered programmatically with UltiDev Cassini Web Server using one-line Cassini Configuration API calls. UltiDev Cassini Web Server can also be used to debug ASP.NET applications.
UltiDev Cassini Web Server has two flavors:
- UltiDev Cassini Web Server for ASP.NET 2.0 & 3.x
- UltiDev Cassini Web Server for ASP.NET 1.1.
ASP.NET 2.0 version requires .NET Framework 2.0 or 3.x and can run ASP.NET 2.0, 3.x and most of ASP.NET 1.1 applications. UltiDev Cassini Web Server for ASP.NET 1.1 requires the presence of .NET Framework 1.1 and can run ASP.NET 1.1 applications. UltiDev Cassini Web Server for ASP.NET 1.1 and 2.0 can run side-by-side. Having two separate processes for running different versions of ASP.NET is similar to having two separate Application Pools in IIS6 for running ASP.NET 1.1 and 2.0 applications.
Comparison to IIS
By default UltiDev Cassini windows service runs the Windows “Local System” (NT AUTHORITY\SYSTEM) account, as opposed to Internet Information Server which, by default, runs with a limited user account. UltiDev Cassini does not support Active Server Pages applications or other application types which use ISAPI extensions. Due to the bug in Windows Communication Foundation, WCF web services are not supported by UltiDev Cassini 2.0
Unlike IIS UltiDev Cassini can be installed on all “flavours” of Windows 2000, Windows XP and Windows Vista. IIS is “limited” to Windows Server and “professional” and “workstation” editions of the Windows
UltiDev Cassini Web Server is free of charge, but not open source. Runtime components of UltiDev Cassini can be freely redistributed along with commercial or free ASP.NET applications using them.