Deploy Website from WebMatrix to Azure

If you have created a web application on WebMatrix and want to host this application on a Windows Azure website, you will need to take a few additional steps to make sure your web application gets deployed to the correct location of your website.

After creating the website on Windows Azure, you will get a page indicating that the site has been created.

You can now click on the Download Publishing Profile link. This downloads a XML file which you should save. This file contains the publishing settings that are needed to be able to deploy the files to the correct location. The file looks a follows:

On the XML file, you can see the server settings as well as credentials to let you deploy the files to the correct Azure website. Some of the text you see on the file will match your application settings.

You now need to open your WebMatrix project and import this file.  On WebMatrix, click on the Remote tab. Now click on the Settings toolbar button.

This opens the project publish settings. The next step is to click on the Import publish settings link and select the file you just downloaded.

The previous step should populate all the settings. You can now click the Validate Connection button and you should get a message indicating that the connection was successful as shown below:

We are now ready to deploy the website.  On WebMatrix, click the Publish toolbar button.  You should see a Publish Preview screen showing all the files that are about to be deployed. On the first deployment, all the files will be deployed, so you should be patient and let the publishing process complete. If you do not have too many files, this will probably be a few seconds.  For additional deployment, only changes will be published.   WebMatrix should display a progress status bar at the bottom which looks similar to this:

When it is done, the status should read Complete, and the website URL should be displayed. Click on the URL to view your new website running on Azure.

I hope this instructions help your deployment be an easy experience.