Install Server Components

by Simon Tan

Introduction

This article will walk you through installing the required server components to be WebMatrix compatible and fulfill the Spotlight requirements for the Web Hosting Gallery.

Prerequisites

We recommend having two separate machines both running Windows Server 2008 R2:

  • One acting as the web server
  • One acting as the database server

While it is possible to run both the web server and database server on the same machine, it is not recommended for performance and security reasons.

You will need both machines connected to the Internet to download required server components.

To simplify the installation of the web server components, we highly recommend installing Web Platform Installer, also known as WebPI, on both machines. WebPI is a tool that automates the installation of a vast majority of server components and other products for Microsoft's Web Platform.

If you prefer to not use WebPI, all of the required components can also be installed by hand or via your own provisioning scripts.

Web Server Components

If you have WebPI 3.0 installed, the following link will automatically launch it with all of the basic web server components you'll need ready to install:

Install Spotlight Components using Web PI (you will be able to review the list of products before installation begins)

(This list of components completely fulfills the Spotlight requirements from the Web Hosting Gallery.)

Note that many of the web applications that can be published by WebMatrix have PHP/MySQL components as requirements. To ensure you are able to support those applications, you can use this alternative link to install everything above plus PHP/MySQL related components:

Install Spotlight Components plus PHP/MySQL related components using Web PI

After WebPI launches from the links above, you'll just need to click the "Install" button to review the list of components and proceed with installation.

Note

Even when using the links above, you'll still have to install the Extensionless URL Hotfix separately, discussed below.

Option 2 : Manually install Web Server components

Here is the full list of which components are installed by those links, so you can confirm against the list of products listed in WebPI. Note that many of them bring in dependencies – that is expected behavior – but the total download should not exceed 50 MB or so.

Server

  • [Required] IIS 7 Web Server basic components

    • Required for basic web server functionality

Frameworks

ASP.NET

  • [Required] ASP.NET

    • This framework is the backend of many of the most popular web applications
  • [Required] ASP.NET MVC 1.0

    • A handful of applications in the App Gallery depend on this installed centrally
  • [Optional]

    Note that you can also optionally install ASP.NET MVC3 and ASP.NET Web Pages, which gives you the ability to host applications written in the new "Razor" syntax of ASP.NET. However, note that the binaries required for these kinds of applications are automatically published by WebMatrix. That is, each end user who publishes applications of this type will automatically end up with the required binaries in a /bin/ folder within their site root directory, so it is not really necessary to install them centrally.

    In fact, we actually recommend that you do not install anything except MVC 1.

    Also, note that this ASP.NET Web Pages is not a final release of the product. If you choose to install ASP.NET Web Pages, you will need to re-install it when future versions are released.

IIS Modules

  • [Required] Microsoft Web Deploy 2.0

    • Web Deploy is a client-server tool that simplifies the deployment of sites and applications to IIS servers. While WebMatrix supports web application publishing using both FTP and Web Deploy protocols, the latter providers a faster, more secure, and richer experience. It also lets the user deploy whole apps, including databases, ensuring they work both locally and remotely. It is the highlight of the WebMatrix publishing story.
  • [Required] FTP Publishing Service

    • To ensure the option of FTP exists for maximum compatibility
  • [Required] IIS Remote Management Service

    • To allow your users to manage aspects of their accounts using the IIS console
    • Also a dependency for Web Deploy to function properly
  • [Required] FastCGI for IIS

    • Provides a much faster CGI implementation than the default
  • [Required] URL Rewrite 2.0

    • A dependency for many applications to function correctly
  • [Required] SQL Server 2008 Management Objects

    • A dependency for many applications to function correctly
  • [Optional] Windows Cache Extension 1.1 for PHP

    • Highly recommended when running PHP on Windows
  • [Optional] MySQL Connector/Net 6.2.3 or higher

    • Necessary for .NET applications using MySQL databases
  • [Optional] Microsoft Drivers for PHP for SQL Server 2.0 in IIS

    • Necessary for PHP applications using SQL Server

Install Web Server Patches

Database Server Components

SQL Server

  • [Required] Microsoft SQL Server 2008

    WebPI supports installing Microsoft SQL Server 2008 Express edition, but we do not recommend this product in shared hosting environments. (You should use the full version instead.)

  • [Optional] PHP Driver for SQL Server
    We highly recommended installing this component on your database server if you are supporting PHP.

MySQL

For more information on configuring a MySQL installation for WebMatrix support, please see this article.

Next Steps

You should ensure that the Web Deploy 2.0 component is configured to allow delegated deployments. This is critical, as it is the primary method that allows your customers to publish to your servers with WebMatrix.