<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Azure App Gallery Blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/azureappgallery/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/azureappgallery/feed.xml</link>
    <description>Windows Azure Web Application Gallery</description>
    <lastBuildDate>Wed, 17 Apr 2019 03:18:57 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Application Submissions to the Azure Gallery</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/application-submissions-to-the-azure-gallery</link>
      <pubDate>Wed, 23 Jul 2014 12:01:00 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2014/07/23/application-submissions-to-the-azure-gallery/</guid>
      <description><![CDATA[The Azure Web Application Gallery provides a way for developers to more easily deploy applications...]]></description>
      <content:encoded><![CDATA[<p>The Azure Web Application Gallery provides a way for developers to more easily deploy applications to Azure users. The Web Application Gallery does not store code snapshots of applications. Instead, the App Gallery and Web PI retrieve the application package submitted by the application owner.&nbsp;&nbsp; The information displayed with the package, such the Publisher link, is all provided by the application developer during the application submission process.</p>
<p>The App Gallery contains both ASP.NET, Java, Node JS, Python and PHP applications that follow the&nbsp;<a href="https://blogs.msdn.com/b/azureappgallery/archive/2013/03/22/windows-azure-application-gallery-principles.aspx">Web Application Gallery Principles</a>&nbsp;.</p>
<p>Developers follow four steps to submit an application to the Web Application Gallery.</p>
<p>&nbsp;<a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0508.capture.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0508.capture.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0508.capture.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0508.capture.png" alt="" border="0" /></a></p>
<p><strong>STEP 1: APPLY WEB APP GALLERY PRINCIPLES</strong></p>
<p>First, developers must review and apply the&nbsp;<a href="https://blogs.msdn.com/b/azureappgallery/archive/2013/03/22/windows-azure-application-gallery-principles.aspx">Web Application Gallery Principles</a>&nbsp;to their applications. These Principles reflect the Web Application Gallery&rsquo;s goals to deliver a quality, safe user experience that is consistent across platforms supported by Azure Platform Installer.</p>
<p><strong>STEP 2: TUNE APPLICATION BASED ON BEST PRACTICES AND PRINCIPLES</strong></p>
<p>Azure Websites uses IIS Web server under the hood. Developers can visit IIS.NET for best practices in running applications on IIS. For ASP.NET applications, developer can start with a snapshot of&nbsp;<a href="https://www.iis.net/learn/application-frameworks/building-and-running-aspnet-applications/aspnet-technical-resources">ASP.NET Technical Resources</a>&nbsp;or check out the&nbsp;<a href="https://www.iis.net/learn/application-frameworks/building-and-running-aspnet-applications">Running ASP.NET Applications on IIS</a>&nbsp;section. For PHP applications, developers can browse the&nbsp;<a href="https://www.iis.net/learn/application-frameworks/running-php-applications-on-iis">Running PHP Applications</a>&nbsp;for articles on how to make PHP applications work well on IIS. Guidance for PHP developers includes&nbsp;<a href="https://www.iis.net/learn/application-frameworks/install-and-configure-php-applications-on-iis/translate-htaccess-content-to-iis-webconfig">how to use web.config to set default document and static rewrite rules.</a>&nbsp;IIS.NET also hosts guidance for any application developer on Windows, such as&nbsp;<a href="https://www.iis.net/learn/get-started/planning-for-security/secure-content-in-iis-through-file-system-acls">Securing Content on IIS Using File System ACLs</a>.</p>
<p>If your application is compatible with IIS and does not require these conditions then it will work on Azure websites platform:</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; php configuration that cannot be updated in a .user.ini or</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Special Python/Java configuration required at the server level may not be supported</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; IIS configuration that cannot be updated with web.config.</p>
<p>-&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Azure websites does not allow special software to be installed on the virtual machines hosting the websites.</p>
<p><strong>STEP 3: PACKAGE USING WEB DEPLOY</strong></p>
<p>After tuning the application package with best practices, the developer adds Web Deploy support to the application package. Microsoft Web Deploy provides the framework for deploying the Web applications onto Azure. With Web Deploy, a developer adds a couple of manifest files to the root directory of an existing ZIP package that tell Azure Gallery installer how to deploy the application.</p>
<p>The manifest.XML file tells what is in the package and allows the developer to set the name of the directory and Web site where the package is deployed. The parameters.xml file gives developers the ability to ask the user for information during the install process, such as Web site path. Learn more about how to define the Web Deploy manifest files in the&nbsp;<a href="https://www.iis.net/learn/develop/windows-web-application-gallery/package-an-application-for-the-windows-web-application-gallery">Application Packaging Guide</a>. Also check out <a href="https://blogs.msdn.com/b/azureappgallery/archive/2013/03/22/tips-for-a-successful-submission-to-windows-azure-app-gallery.aspx">Tips and Tricks for a successful submission to Azure Website Gallery</a>.</p>
<p><strong>STEP 4: SUBMIT APPLICATION TO WEB APPLICATION GALLERY</strong></p>
<p>Once the package is built and tested, the Web developer is ready to submit the package to the Web Application Gallery. To learn on how to submit the application, click <a href="https://blogs.msdn.com/b/azureappgallery/archive/2013/04/24/how-to-submit-an-application-to-web-app-gallery.aspx">here</a> .</p>
<p>The Web Application Gallery Submission form in the Web Application Gallery starts by collecting information about the application. See the&nbsp;<a href="https://www.iis.net/learn/develop/windows-web-application-gallery/windows-web-application-gallery-link-addition-process-walkthrough">Submitting Links to the Web Application Gallery</a>&nbsp;walkthrough for a detailed description of how to submit an application. Each application is reviewed to make sure that the application follows the Web Application Gallery Principles. Microsoft may contact the application developer in the course of the review, and also to inform the application developer about the state of the submission.</p>
<p><strong>WEB APPLICATION GALLERY DEVELOPERS</strong></p>
<p>If an application developer is accepted into the Web Application Gallery, the lifecycle of the application continues at the developer&rsquo;s pace. With each package update, the application developer must contact the <a href="mailto:appgal@microsoft.com">Microsoft Web Application Gallery</a> to provide a new SHA1 hash, which helps secure the distribution point.</p>
<p>For general application questions and issues, the Web Application Gallery team redirects the user to the application&rsquo;s free support forums.</p>
<p>For Installation and Deployment failures on Azure Gallery, please use <a href="mailto:Azure%20Websites%20Support%20forums">Azure Websites Support forums</a> to inform us or email us at <a href="mailto:appgal@microsoft.com">appgal@microsoft.com</a>.</p>
<p><strong>REQUIREMENTS/CRITERIA CHECKLIST</strong></p>
<ol>
<li>Must meet <a href="https://blogs.msdn.com/b/azureappgallery/archive/2013/03/22/windows-azure-application-gallery-principles.aspx">Web Application Gallery Principles</a>&nbsp;</li>
<li>Application must work with on Azure Websites and IIS (Windows 2003 to 2012 server, Win 7, 8 clients, test application Web PI, Web Matrix)</li>
<li>Application must belong to one of the category :
<ul>
<li>Blog</li>
<li>CMS</li>
<li>Forum</li>
<li>Wiki</li>
<li>Tools</li>
<li>Frameworks</li>
<li>Templates</li>
<li>eCommerce</li>
</ul>
Application must be functional based on the category it belongs to. It must be tested by the partner on Azure websites. App Gallery team will run basic tests on the application before publishing the application in the Azure App Gallery</li>
<li>Application must be compatible with Web Matrix:
<ul>
<li>User should be able to edit and download your application with Web Matrix</li>
<li>Community or Application partner ,must provide support for Web Application&nbsp;</li>
</ul>
</li>
</ol>]]></content:encoded>
    </item>
    <item>
      <title>WordPress with SQL Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/wordpress-with-sql-azure</link>
      <pubDate>Tue, 17 Sep 2013 18:15:38 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/09/17/wordpress-with-sql-azure/</guid>
      <description><![CDATA[Check this blog out &nbsp;to install WordPress with SQL Azure...]]></description>
      <content:encoded><![CDATA[<p>Check this blog out &nbsp;to install WordPress with SQL Azure &nbsp;</p>
<p><a href="https://sunithamk.wordpress.com/2013/09/17/wordpress-with-sql-azure-on-windows-azure-websites/">https://sunithamk.wordpress.com/2013/09/17/wordpress-with-sql-azure-on-windows-azure-websites/</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Web App Gallery Featured App Selection Process</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/web-app-gallery-featured-app-selection-process</link>
      <pubDate>Tue, 14 May 2013 13:07:10 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/05/14/web-app-gallery-featured-app-selection-process/</guid>
      <description><![CDATA[Web Application gallery showcases featured application in the Gallery on our website . The process...]]></description>
      <content:encoded><![CDATA[<p>Web Application gallery showcases featured application in the Gallery on our <a href="https://www.microsoft.com/web/gallery/">website</a> . The process for showcasing the featured application on our website from June 1st&#160; 2013 is as follows&#160; :</p>  <p>1. There will be a maximum of 5 applications showcased in the Web App Gallery website </p>  <p>2. The list of applications will include a combination of </p>  <p>&#160;</p>  <ul>   <li>Most popular application in the Gallery </li>    <li>New applications added to Azure Application Gallery for Windows Azure Websites </li>    <li>Updates to existing applications added to the Azure Application Gallery for Windows Azure Websites </li> <!--EndFragment--></ul>  <p>&#160;</p>  <p>For more questions , contact <a href="mailto:appgal@microsoft.com">appgal@microsoft.com</a></p>]]></content:encoded>
    </item>
    <item>
      <title>Test Applications for Web Application Gallery</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/test-applications-for-web-application-gallery</link>
      <pubDate>Fri, 26 Apr 2013 12:30:00 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/04/26/test-applications-for-web-application-gallery/</guid>
      <description><![CDATA[Here are some video tutorials that shows &nbsp;what the App Gallery team tests for :

Testing...]]></description>
      <content:encoded><![CDATA[<p>Here are some video tutorials that shows &nbsp;what the App Gallery team tests for :</p>
<ul>
<li><a href="https://channel9.msdn.com/Series/Windows-Azure-Web-Sites-Tutorials/Testing-an-Application-Package-for-the-Web-Application-Gallery-Part-1">Testing Application Packages for the Web Application Gallery &ndash; Part 1</a></li>
<li><a href="https://channel9.msdn.com/Series/Windows-Azure-Web-Sites-Tutorials/Testing-Application-Packages-for-the-Web-Application-Gallery--Part-2">Testing Application Packages for the Web Application Gallery &ndash; Part&nbsp;2</a></li>
</ul>]]></content:encoded>
    </item>
    <item>
      <title>How to build Python Application package for Windows Azure App Gallery</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/how-to-build-python-application-package-for-windows-azure-app-gallery</link>
      <pubDate>Fri, 26 Apr 2013 12:28:00 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/04/26/how-to-build-python-application-package-for-windows-azure-app-gallery/</guid>
      <description><![CDATA[Windows Azure Application Gallery gives Web Site builders an easy way to discover , learn and...]]></description>
      <content:encoded><![CDATA[<p><span style="font-family: arial,helvetica,sans-serif;">Windows Azure Application Gallery gives Web Site builders an easy way to discover , learn and install freely available Open source Web applications on Windows Azure websites &nbsp;.To have your application included in the Gallery, you must add a couple of configuration files to your existing distribution package. This article provides everything you need to prepare your&nbsp;<strong>Python application &nbsp;</strong>for the Windows Web App Gallery.</span></p>
<h4><span style="font-family: arial,helvetica,sans-serif;">PACKAGING PROCESS</span></h4>
<p><span style="font-family: arial,helvetica,sans-serif;">The following procedure is a summary of the most common process for preparing a working application for inclusion in the Windows Azure App Gallery. The steps are described in more detail in the sections that follow.</span></p>
<ol>
<li><span style="font-family: arial,helvetica,sans-serif;">Review the&nbsp;<a href="https://blogs.msdn.com/b/azureappgallery/archive/2013/03/22/windows-azure-application-gallery-principles.aspx">Windows Azure Application Gallery Principles</a>. All applications in the Windows Azure Application Gallery must follow these principles.</span></li>
<li><span style="font-family: arial,helvetica,sans-serif;">Create and test a Web Deploy application package</span></li>
<li><span style="font-family: arial,helvetica,sans-serif;">Submit the package to the Gallery for testing using the&nbsp;<a title="submission form" href="https://www.microsoft.com/web/gallery/myapps.aspx">submission form</a>.</span></li>
<li><span style="font-family: arial,helvetica,sans-serif;">Resolve any issues with the Application Gallery team.</span></li>
</ol>
<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">&nbsp;</span></p>
<h4><span style="font-family: arial,helvetica,sans-serif;">CREATE A WEB DEPLOYABLE PACKAGE</span></h4>
<p><span style="font-family: arial,helvetica,sans-serif;">To create your application package, you need to create the following &nbsp;files:</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;">1. <strong>Manifest.xml: </strong></span><span style="font-family: arial,helvetica,sans-serif;">Manifest file says what&rsquo;s in the application package file and how to install it . Here is a basic manifest file</span><span style="font-family: courier new,courier; font-size: x-small;">&nbsp;</span></p>
<p><span style="font-size: small;"><span style="font-family: courier new,courier;">&lt;MSDeploy.iisApp&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></span></p>
<p><span style="font-size: small;"><span style="font-family: courier new,courier;">&nbsp; &lt;!-- iisapp will copy the contents of the application root folder , in this case it is&nbsp; &lsquo;mypythonapp&rsquo; to the newly created site for the application --&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></span></p>
<p><span style="font-size: small;"><span style="font-family: courier new,courier;">&nbsp; &lt;iisApp path="mypythonapp"/&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></span></p>
<p><span style="font-family: courier new,courier; font-size: small;">&lt;/MSDeploy.iisApp&gt;</span></p>
<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">&nbsp;</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;">Some of the other things you can do with the manifest file</span></p>
<ul>
<li><span style="font-family: arial,helvetica,sans-serif;">Set permissions for files or folder using <strong>setAcl </strong>provider &nbsp;</span></li>
<li><span style="font-family: arial,helvetica,sans-serif;">Run any prerequisite&nbsp; SQL scripts required for your application using dbfullsql (SQL Server) and dbmysql (MySQL) provider</span></li>
<li><span style="font-family: arial,helvetica,sans-serif;">Copy files from the root of the ZIP folder to the site root folder when installing the ZIP package using <strong>alias</strong> provider</span></li>
</ul>
<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">&nbsp;</span><span style="font-family: arial,helvetica,sans-serif;">For more details refer <a href="https://www.iis.net/learn/develop/windows-web-application-gallery/reference-for-the-web-application-package"><span style="color: #0000ff; font-size: small;">Packaging Guidelines Reference Guide</span></a></span></p>
<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">2. </span><span style="font-family: arial,helvetica,sans-serif;"><strong>Parameters.xml</strong> :Parameters file has a list of parameters that accept user input received during installation</span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">&nbsp;</span></p>
<p><span style="font-family: courier new,courier; font-size: small;">&lt;parameters&gt;</span></p>
<p><span style="font-family: courier new,courier; font-size: small;">&lt;!--The application path needs to be set here . Leave the defaultValue as empty as this will be replaced with the path to site that will be created during deployment --&gt;</span></p>
<p><span style="font-family: courier new,courier; font-size: small;">&lt;parameter name="AppPath"&nbsp; defaultValue="" tags="iisapp"&gt;</span></p>
<p><span style="font-family: courier new,courier; font-size: small;">&lt;parameterEntry type="ProviderPath" scope="iisapp"&nbsp;&nbsp;&nbsp; match="mypythonapp"&nbsp; /&gt;</span></p>
<p><span style="font-family: courier new,courier; font-size: small;">&lt;/parameter&gt;</span></p>
<p><span style="font-family: courier new,courier; font-size: small;">&lt;/parameters&gt;</span><span style="font-family: arial,helvetica,sans-serif; font-size: small;">&nbsp;</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;">For more details refer <a href="https://www.iis.net/learn/develop/windows-web-application-gallery/reference-for-the-web-application-package"><span style="color: #0000ff; font-size: small;">Packaging Guidelines Reference Guide</span></a></span></p>
<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">&nbsp;</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;">3.<strong> Web.config : </strong>Create a web.config file &nbsp;that will be part of your application root folder &nbsp;that will configure your application to</span></p>
<ul>
<li><span style="font-family: arial,helvetica,sans-serif;">route all requests to the specified WSGI handler</span></li>
<li><span style="font-family: arial,helvetica,sans-serif;">Set Environment variables using appSettings</span></li>
<li><span style="font-family: arial,helvetica,sans-serif;">If the framework should serve certain files served statically, or from another web framework such as Node.js or ASP.NET, they could match different URLs in the rewrite, or could have additional web.config files masking the rewrite. For more information on URL rewrite , refer this <a href="https://www.iis.net/learn/application-frameworks/install-and-configure-php-applications-on-iis/provide-url-rewriting-functionality"><span style="color: #0000ff;">article</span></a></span></li>
</ul>
<p>&nbsp;</p>
<p><span style="font-family: courier new,courier;">&lt;configuration&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp; &lt;appSettings&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!-- The appSettings keys will be set as Environment variables --&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!&mdash;You need to set the Python Path for the application in web.config . For Azure websites, use &lsquo;D: \home\site\wwwroot&rsquo; as this will point to the site root where the any frameworks needed by your application will reside --&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;add key="pythonpath" value="D:\home\site\wwwroot" /&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- You need to set the WSGI_HANDLER &nbsp;for the application in web.config . It's a module/package name, followed by the attribute in the module to be used; for example mypackage.mymodule.handler. Add parentheses to indicate that the attribute should be called. --&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="font-family: courier new,courier;">&lt;!-- Here is an example WSGI_HANDLER for a Django based application&nbsp; --&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;add key="WSGI_HANDLER" value="django.core.handlers.wsgi.WSGIHandler()" /&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></p>
<p><span style="font-family: courier new,courier;">&lt;!&mdash;If your application requires any additional app settings , then include then in this setting . For example Django require &ldquo;DJANGO_SETTINGS_MODULE&rsquo; app settings, and this should be added in this section as seen below --&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&lt;!-- &nbsp;&nbsp;&lt;add key=" DJANGO_SETTINGS_MODULE" value="DjangoApplication.settings" /&gt; --&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;</span><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp; &lt;/appSettings&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;</span><span style="font-family: courier new,courier;">&lt;system.webServer&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp; &lt;handlers&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></p>
<p><span style="font-family: courier new,courier;">&lt;!-- Configure the handler mapping for your application using the path to the Python interpreter and the path to the wfastcgi.py script . This handler mapping will be the same for any Python Application. Make sure your application has an empty &lsquo;handler.fcgi&rsquo; file as the requests are mapped to this file --&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="font-family: courier new,courier;">&lt;add name="Python_FastCGI"</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; path="handler.fcgi"</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; verb="*"</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; modules="FastCgiModule"</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; scriptProcessor="D:\Python27\python.exe|D:\Python27\Scripts\wfastcgi.py"</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; resourceType="Either"</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; requireAccess="Script" /&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/handlers&gt;</span><span style="font-family: courier new,courier;">&nbsp;</span></p>
<p><span style="font-family: courier new,courier;">&lt;!--&nbsp; Include this rewrite rule as seen below to rewrite requests and route them through handler.fcgi --&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;rewrite&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;rules&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;rule name="Rewrite Rule" stopProcessing="true"&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;match url="(.*)" ignoreCase="false" /&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;conditions&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/conditions&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;action type="Rewrite" url="handler.fcgi/{R:1}" appendQueryString="false" /&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/rule&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/rules&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/rewrite&gt;</span></p>
<p><span style="font-family: courier new,courier;">&nbsp;&nbsp;&nbsp; &lt;/system.webServer&gt;</span></p>
<p><span style="font-family: courier new,courier;">&lt;/configuration&gt;</span></p>
<p>&nbsp;</p>
<p><span style="font-family: arial,helvetica,sans-serif;">4.<strong>handler.fcgi</strong> : &nbsp;Include an <strong>empty</strong> handler.fcgi &nbsp;is used as an empty handler file under the web site root to serve as the request target&nbsp;.</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;"><span style="font-family: arial,helvetica,sans-serif;">Refer this <a href="https://github.com/WindowsAzure/azure-content/blob/master/DevCenter/Python/Tutorials/web-sites-configuration.md"><span style="color: #0000ff;">article</span></a> on how to configure Python for Windows Azure</span></span></p>
<h4><span style="font-family: arial,helvetica,sans-serif;"><strong>PACKAGE AN APPLICATION</strong></span></h4>
<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">Create a compressed file (Zip) package of the application. You can create the Zip file with Windows&reg; Explorer, WinZip, or the Linux zip command. The Manifest.xml, Parameters.xml go in the root directory of the ZIP package. The rest of your application goes in a sub folder of the root as in the diagram below.</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;">mypythonapp.zip </span><br /><span style="font-family: arial,helvetica,sans-serif;"> \ </span><br /><span style="font-family: arial,helvetica,sans-serif;"> &nbsp;+--<span style="font-size: small;">Manifest.xml</span> (required) </span><br /><span style="font-family: arial,helvetica,sans-serif;"> &nbsp;+--Parameters<span style="font-size: small;">.xml</span> (required) </span><br /><span style="font-family: arial,helvetica,sans-serif;"> &nbsp;+--<span style="font-size: small;">mypythonapp</span> root folder</span><br /><span style="font-family: arial,helvetica,sans-serif;"> &nbsp; &nbsp; \ </span><br /><span style="font-family: arial,helvetica,sans-serif;"> &nbsp; &nbsp; &nbsp;+-- your application&rsquo;s sub folders and files &nbsp;</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;">&nbsp; &nbsp; &nbsp;+-- Python Framework modules, example &lsquo;django&rsquo; framework folder will&nbsp;</span><span style="font-family: arial,helvetica,sans-serif;">be placed here&nbsp; &nbsp;</span><br /><span style="font-family: arial,helvetica,sans-serif;"> &nbsp; &nbsp; &nbsp;|--web.config (required)</span><br /><span style="font-family: arial,helvetica,sans-serif;"> &nbsp; &nbsp; &nbsp;|--handler.fcgi (required)</span></p>
<h4><span style="font-family: arial,helvetica,sans-serif;"><strong>TEST APPLICATION PACKAGE</strong></span></h4>
<p><span style="font-family: arial,helvetica,sans-serif;"><strong><span style="font-size: small;">Install dependencies for testing the application : </span></strong><span style="font-size: small;">All you need is </span></span><span style="font-family: arial,helvetica,sans-serif;"><a href="https://www.iis.net/downloads/microsoft/web-deploy"><span style="color: #0000ff; font-size: small;">Web deploy v3.0</span></a></span></p>
<p><span style="font-family: arial,helvetica,sans-serif;"><strong><span style="font-size: small;">Setup a Windows Azure account if you don&rsquo;t have one&nbsp;&nbsp; </span></strong></span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;"><span style="font-size: small;">If you don&rsquo;t already have an account for Windows Azure, you can setup a </span><a href="https://www.windowsazure.com/en-us/pricing/free-trial/"><span style="color: #0000ff; font-size: small;">free trial</span></a><span style="font-size: small;"> account that is available for 90 days or you can sign up for an Azure subscription based on the </span><a href="https://www.windowsazure.com/en-us/pricing/purchase-options/"><span style="color: #0000ff; font-size: small;">plans available</span></a><span style="font-size: small;">. If you already have a Windows Azure account you can use the existing account.</span></span></p>
<p><span style="font-family: arial,helvetica,sans-serif;"><strong><span style="font-size: small;">Create a Website for your application using the Azure Management Portal</span></strong></span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif; font-size: small;">Login to https://manage.windowsazure.com and create a new site or use an existing site. Click on the site to access its Dashboard. Now download the Publish Profile . </span><span style="font-family: arial,helvetica,sans-serif;">Open the file in any text editor. Here is a sample:</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: medium;"><code>&lt;publishProfile profileName="myazuresite - Web Deploy" publishMethod="MSDeploy" publishUrl="waws-prod-001.publish.azurewebsites.windows.net:443" msdeploySite="myazuresite" userName="$myazuresite" userPWD="7nbQc4ngW" destinationAppUrl="<a href="https://myazuresite.azurewebsites.net">https://myazuresite.azurewebsites.net</a>" SQLServerDBConnectionString="" mySQLDBConnectionString=" " hostingProviderForumLink="" controlPanelLink="<a href="https://windows.azure.com">https://windows.azure.com</a>"&gt;</code></span></p>
<p>&nbsp;</p>
<p><span style="font-family: arial,helvetica,sans-serif;"><strong>Build a SetParameters File for deploying your application</strong></span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;">You can name this file as you would name a filename, but for the sake of this article let&rsquo;s say the file is called SetParameters.xml .</span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;">This is a sample of the SetParameters.xml file. You can see the parameters.xml file from the web deployable package&nbsp;<a href="https://www.iis.net/learn/develop/windows-web-application-gallery/wordpress-sample-files">here</a>&nbsp; .</span></p>
<pre style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&lt;parameters&gt; </span></pre>
<pre style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&nbsp;&lt;!--The name of the parameter matches the application path parameter in parameters.xml . Value for the parameter is azure site name&nbsp; --&gt;</span></pre>
<pre style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&nbsp;&nbsp;&nbsp;&nbsp; &lt;setParameter name="AppPath" value="myazuresite" /&gt; </span></pre>
<pre style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&lt;/parameters&gt;</span></pre>
<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">&nbsp;</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;"><strong>Run Web Deploy Command Line</strong></span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;">Open Command Prompt with elevated privileges and run msdeploy.exe to publish the application to Azure site you just created.</span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;"><strong>Usage:</strong></span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;">Msdeploy.exe &ndash;verb:sync &ndash;source:package=&lt;pathToLocalZip&gt; -dest:auto,computername=&rdquo;&lt;publisherURLwithHttpsAndPortOr8172&gt;/msdeploy.axd?site=&lt;remoteSiteName&gt;&rdquo;,username=&lt;publishingUserName&gt;,password=&lt;publisherPwd&gt;,authtype=basic &nbsp;- setParamFile:&lt;pathToLocalSetParamFile&gt;</span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;"><strong>Example:</strong></span></p>
<p style="padding-left: 30px;"><span style="font-family: arial,helvetica,sans-serif;">C:\Program Files\IIS\Microsoft Web Deploy V3&gt;Msdeploy.exe -verb:sync -source:package="c:\packages\mypythonapp.zip" -dest:auto,computername='https://waws-prod-001.publish.azurewebsites.windows.net:443/msdeploy.axd?site=myazuresite',username='$myazuresite',password='7nbQc4ngW',authtype=basic -setParamFile:"c:\setparameters.xml"</span></p>
<p><span style="font-family: arial,helvetica,sans-serif;">Once your application package has been successfully deployed to Azure site. Browse the Site URL and to verify if your application runs successfully on Windows Azure .</span></p>
<h4><span style="font-family: arial,helvetica,sans-serif;"><strong>REFERENCES</strong></span></h4>
<p><span style="font-family: arial,helvetica,sans-serif;"><a href="https://blogs.msdn.com/b/azureappgallery/archive/2013/03/22/tips-for-a-successful-submission-to-windows-azure-app-gallery.aspx"><span style="color: #0000ff; font-size: small;">Tips for a successful submission to Windows Azure App Gallery</span></a></span></p>
<p><span style="font-family: arial,helvetica,sans-serif;"><a href="https://www.iis.net/learn/develop/windows-web-application-gallery/reference-for-the-web-application-package"><span style="color: #0000ff; font-size: small;">Packaging Guidelines Reference Guide</span></a></span></p>
<p><a href="https://www.windowsazure.com/en-us/develop/python/"><span style="color: #0000ff; font-size: small;">Windows Azure Python Developer center</span> </a></p>
<p><a href="https://github.com/WindowsAzure/azure-content/blob/master/DevCenter/Python/Tutorials/web-sites-configuration.md"><span style="color: #0000ff;">Configuring Python with Windows Azure Web Sites</span></a></p>
<p><span>&nbsp;</span></p>]]></content:encoded>
    </item>
    <item>
      <title>How to submit an application to Web App Gallery</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/how-to-submit-an-application-to-web-app-gallery</link>
      <pubDate>Wed, 24 Apr 2013 11:26:00 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/04/24/how-to-submit-an-application-to-web-app-gallery/</guid>
      <description><![CDATA[If you have an application that you wish to submit to the Web Application Gallery , here&rsquo;s...]]></description>
      <content:encoded><![CDATA[<p>If you have an application that you wish to submit to the Web Application Gallery , h<span>ere&rsquo;s some info to help you understand the submission process :&nbsp;</span></p>
<p><strong>Step#1 :</strong> Review <a href="https://www.iis.net/learn/develop/windows-web-application-gallery/windows-web-application-gallery-principles"> Web App Gallery Principles</a>&nbsp;which are the basic requirements that you need to understand &nbsp;before submitting an application .</p>
<p><strong>Step#2 :</strong> Build a package for your application for Web App Gallery with these <a href="https://www.iis.net/learn/develop/windows-web-application-gallery/package-an-application-for-the-windows-web-application-gallery">guidelines</a>. You need to test the application for App Gallery before submitting . Here are some video tutorials that shows &nbsp;what the App Gallery team tests for :</p>
<ul>
<li><a href="https://channel9.msdn.com/Series/Windows-Azure-Web-Sites-Tutorials/Testing-an-Application-Package-for-the-Web-Application-Gallery-Part-1">Testing Application Packages for the Web Application Gallery &ndash; Part 1</a></li>
<li><a href="https://channel9.msdn.com/Series/Windows-Azure-Web-Sites-Tutorials/Testing-Application-Packages-for-the-Web-Application-Gallery--Part-2">Testing Application Packages for the Web Application Gallery &ndash; Part&nbsp;2</a></li>
</ul>
<p>&nbsp;&nbsp;</p>
<div><strong><strong>Step#3&nbsp;</strong></strong>Once you determine that your web app meets the gallery's principles and have created a compatible app package, then &nbsp;go to our&nbsp;<a href="https://www.microsoft.com/web/gallery/developer.aspx">Submit an app page&nbsp;</a>. Click on &nbsp;"<em><strong>Submit your web app</strong></em>" button&nbsp;<strong><strong><br /></strong></strong></div>
<div><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/2260.submitapp.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/2260.submitapp.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/2260.submitapp.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/300x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/2260.submitapp.png" alt="" border="0" /></a></div>
<div>&nbsp;</div>
<div><strong>Step#4 :</strong> &nbsp;You will be required to login with your Windows Live ID and then you will be redirected to the submission Portal . Click on "Submit a new application"</div>
<div><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/2804.submitportal.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/2804.submitportal.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/2804.submitportal.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/300x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/2804.submitportal.png" alt="" border="0" /></a></div>
<div>&nbsp;</div>
<div><strong>Step#5:</strong> Submission form needs to filled out in order to submit the application to the gallery &nbsp;. The submission form is pretty&nbsp;straightforward . It&nbsp;&nbsp;requires you to enter some basic information about your application , the owner of the application and the package information of the application .</div>
<p>&nbsp;</p>
<div>When submitting , make sure you s<span>elect an <strong>unique application ID</strong> and note the application ID&nbsp;</span><strong>must not change</strong><span>&nbsp;when you submit updated versions for the same application . The form also requires you to enter the SHA1 hash checksum for you application package .&nbsp;</span>You can calculate it using the tool <a href="https://support.microsoft.com/kb/841290">FCIV</a>&nbsp;.Finally , review the terms and conditions and &nbsp;Click on Submit Your App &nbsp;to submit your application .</div>
<p>&nbsp;</p>
<div>The Submission Portal will validate the data entered before It can be submitted . If the validation fails , please make the necessary changes and resubmit your application .&nbsp;</div>
<div>
<div><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0385.validate.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0385.validate.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0385.validate.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/300x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0385.validate.png" alt="" border="0" /></a></div>
</div>
<div>&nbsp;</div>
<div>Once the application is submitted, it will take 3-5 business days for us to validate the application . We&rsquo;ll send you an email when your app is published or if we have more questions about your submission.&nbsp;You can review our process at <a href="https://www.iis.net/learn/develop/windows-web-application-gallery/windows-web-application-gallery-link-addition-process-walkthrough">Windows Web Application Gallery Link Addition Process Walkthrough</a> . If you have any more questions , check out our<a href="https://www.iis.net/learn/develop/windows-web-application-gallery/frequently-asked-questions"> FAQ section&nbsp;</a></div>]]></content:encoded>
    </item>
    <item>
      <title>Deconstructing the  custom feed to test your web application on Web Platform Installer</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/deconstructing-the-custom-feed-to-test-your-web-application-on-web-platform-installer</link>
      <pubDate>Tue, 16 Apr 2013 15:49:22 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/04/16/deconstructing-the-custom-feed-to-test-your-web-application-on-web-platform-installer/</guid>
      <description><![CDATA[I have been working with Microsoft Web application Gallery for a while now and the most common...]]></description>
      <content:encoded><![CDATA[<p style="font: 13px/19px Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">I have been working with Microsoft Web application Gallery for a while now and the most common concern I have seen is that developers would like to test their application before submitting to the Web Application Gallery but have difficulty building the custom feed . &nbsp;You can view a sample custom feed &nbsp;<strong><a href="https://www.iis.net/learn/develop/windows-web-application-gallery/testing-a-web-application-zip-package-for-inclusion-with-the-web-application-gallery">here</a>&nbsp;</strong>&nbsp;to test your application . &nbsp; This blog article will deconstruct this feed and explain how you can modify this to your needs</p>
<p style="font: 13px/19px Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">1. Create a new product &lt;entry&gt; for your &nbsp;application</p>
<pre style="font: 12px/18px Consolas, Monaco, monospace; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">&lt;!-- Sample application with dependencies --&gt;
 &lt;entry type="application"&gt;
&lt;!-- Enter a UNIQUE productId for your application to avoid conflicts with other existing applications and products in Web PI --&gt;
 &lt;productId&gt;Sample_PHP_MySQL_App&lt;/productId&gt;
 &lt;!-- Enter an appropriate title for your application --&gt;
 &lt;title&gt;Sample PHP and and MySQL application&lt;/title&gt;
&lt;!-- Include some brief description about the application  --&gt;
 &lt;summary&gt;PHP and MySQL application sample&lt;/summary&gt;
 &lt;!-- Include any detailed information about the application --&gt;
 &lt;longSummary&gt;Sample PHP and MySQL to show how to add a feed with a custom PHP application to WebPI and define all dependencies.&lt;/longSummary&gt;

 &lt;keywords&gt;
 &lt;!-- To display under PHPApps subtab , include this Keyword --&gt; 
 &lt;keywordId&gt;MyApps&lt;/keywordId&gt;
 &lt;keywordId&gt;MySQL&lt;/keywordId&gt;
 &lt;/keywords&gt;
&lt;version&gt;1.0&lt;/version&gt;
 &lt;images&gt;
 &lt;icon&gt;c:\SamplePHPAppIcon.jpg&lt;/icon&gt;
 &lt;/images&gt;
&lt;updated&gt;2009-10-5T18:30:02Z&lt;/updated&gt;
 &lt;published&gt;2009-10-5T18:30:02Z&lt;/published&gt;
&lt;author&gt;
 &lt;name&gt;Sample Application Builder&lt;/name&gt;
 &lt;uri&gt;https://www.contoso.com&lt;/uri&gt;
 &lt;/author&gt;
&lt;!-- Related product can be any product that is nice to have  , but is not required --&gt;
 &lt;related&gt;
 &lt;relatedProduct&gt;
 &lt;productId&gt;MySQL&lt;/productId&gt;
 &lt;/relatedProduct&gt;
 &lt;/related&gt;
&lt;!-- 
 Minimum set of requirements/dependencies in order to successfully install the application: 
 PHP, WDeploy, SQL Management Objects, MySql Connector and URL Rewrite.
 You can replace PHP , Wincache to ASP.NET product Ids (ASP.NET 4.5 : NetFramework45  ; ASP.NET 3.5 : NetFramework35 )  if your application is an ASP.NET application . 
 --&gt;
 &lt;dependency&gt;
 &lt;and&gt;
 &lt;dependency&gt;
 &lt;productId&gt;WDeployNoSMO&lt;/productId&gt;
 &lt;/dependency&gt;
 &lt;dependency&gt;
 &lt;productId&gt;PHP53&lt;/productId&gt;
 &lt;/dependency&gt;
 &lt;dependency&gt;
 &lt;productId&gt;MySQLConnector&lt;/productId&gt;
 &lt;/dependency&gt;
 &lt;dependency&gt;
 &lt;productId&gt;UrlRewrite2&lt;/productId&gt;
 &lt;/dependency&gt;
 &lt;/and&gt;
 &lt;/dependency&gt;
 &lt;!-- Installer for an application should be Web Deploy package --&gt;
 &lt;installers&gt;
 &lt;installer&gt;
 &lt;id&gt;1&lt;/id&gt;
 &lt;!-- List of languages this package is localized in: English, Russian, French, German and Italian --&gt;
 &lt;languageId&gt;en&lt;/languageId&gt;
 &lt;languageId&gt;ru&lt;/languageId&gt;
 &lt;languageId&gt;fr&lt;/languageId&gt;
 &lt;languageId&gt;de&lt;/languageId&gt;
 &lt;languageId&gt;it&lt;/languageId&gt;
 &lt;installerFile&gt;
 &lt;!-- size of the package in KBs --&gt;
 &lt;fileSize&gt;1024&lt;/fileSize&gt;
&lt;!-- Include a local file path like 'file://c:\myapplication\myapp.zip' or a HTTP URL --&gt;
 &lt;installerURL&gt;https://www.contoso.com/SamplePHPApplication.zip&lt;/installerURL&gt;
 &lt;!-- SHA of the package file for signature verification --&gt;
 &lt;sha1&gt;1223334444555556666667777777888888889999&lt;/sha1&gt;
 &lt;/installerFile&gt;
 &lt;helpLink&gt;https://www.contoso.com/SamplePHPApplicationForum.aspx&lt;/helpLink&gt;
 &lt;msDeploy&gt;
 &lt;!-- Default page is a start page --&gt;
 &lt;startPage /&gt;
 &lt;/msDeploy&gt;
 &lt;/installer&gt;
 &lt;/installers&gt;
 &lt;/entry&gt;</pre>
<p style="font: 13px/19px Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">2. Create a new Tab where the application you wish to test can be listed</p>
<pre style="font: 12px/18px Consolas, Monaco, monospace; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">&lt;tabs&gt;
 &lt;tab&gt;
 &lt;keywordTab&gt;
 &lt;!-- Creates a new Tab called Sample Applications --&gt;
 &lt;id&gt;SampleApplications&lt;/id&gt;
 &lt;name&gt;Sample Applications&lt;/name&gt;
  &lt;description&gt;Select from sample applications:&lt;/description&gt; 
   &lt;!-- Create multiple sub-tabs under 'Sample Applications'  --&gt;
    &lt;keywords&gt; 
      &lt;keywordId&gt;MyApps&lt;/keywordId&gt;
    &lt;/keywords&gt;
  &lt;/keywordTab&gt;
 &lt;/tab&gt;
 &lt;/tabs&gt;</pre>
<p style="font: 13px/19px Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">3. Create a new Keyword to categorize the application . This allows you to creates Groups of applications within the same Tab section</p>
<pre style="font: 12px/18px Consolas, Monaco, monospace; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">&lt;keywords&gt;&nbsp;
&lt;keyword id="PHPApps"&gt;PHP Apps&lt;/keyword&gt;
&lt;/keywords&gt;</pre>
<p style="font: 13px/19px Georgia, 'Times New Roman', 'Bitstream Charter', Times, serif; color: #333333; text-transform: none; text-indent: 0px; letter-spacing: normal; word-spacing: 0px; white-space: normal; font-size-adjust: none; font-stretch: normal; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;">You can modify this &nbsp;feed as per your needs &nbsp;and test your application with Web Platform installer .</p>]]></content:encoded>
    </item>
    <item>
      <title>Deconstructed View of an application package used by Web Application Gallery</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/deconstructed-view-of-an-application-package-used-by-web-application-gallery</link>
      <pubDate>Wed, 10 Apr 2013 09:12:00 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/04/10/deconstructed-view-of-an-application-package-used-by-web-application-gallery/</guid>
      <description><![CDATA[To help you understand what a web deployable package for Web Application Gallery&nbsp;is , I have...]]></description>
      <content:encoded><![CDATA[<p><span style="font-family: Calibri;">To help you understand what a web deployable package for Web Application Gallery&nbsp;is , I have deconstructed the&nbsp;contents of the package&nbsp; in this post : </span></p>
<p><span style="font-family: Calibri;"><strong>#1 : manifest.xml (required):&nbsp;</strong></span></p>
<p><span style="font-family: Calibri;">This file is used to</span></p>
<ul>
<li><span style="font-family: Calibri;">set up the ACLs for your application</span></li>
<li><span style="font-family: Calibri;">content path for your application</span></li>
<li><span style="font-family: Calibri;">may include any references to SQL Server or MySQL scripts</span></li>
<li><span style="font-family: Calibri;">may include &ldquo;alias&rdquo; provider that allows you to &ldquo;add&rdquo;&nbsp; a new file to the code base during deployment or &ldquo;rename&rdquo; an existing file during deployment</span><span style="font-family: Calibri;">&nbsp;</span></li>
</ul>
<p><span style="font-family: Calibri;"><strong>#2: parameters.xml (required):</strong></span></p>
<p><span style="font-family: Calibri;">This file is used to identify the</span></p>
<ul>
<li><span style="font-family: Calibri;">Destination content path for your application</span></li>
<li><span style="font-family: Calibri;">ACL parameters that match the ACL specified in the manifest.xml&nbsp;</span></li>
<li><span style="font-family: Calibri;">Database parameters if application supports a database</span></li>
<li><span style="font-family: Calibri;">Any user defined parameters that allows you to replace &ldquo;information&rdquo; in a file based on user input or replace &ldquo;information&rdquo; with some default value that would be required for a specific scenario.</span></li>
</ul>
<p><span style="font-family: Calibri;">For example, you can use parameters to create a site&rsquo;s admin user or allow the user to enter a Secret Key for the ecommerce application etc.&nbsp;&nbsp;</span><span style="font-family: Calibri;">&nbsp;</span></p>
<p><span style="font-family: Calibri;"><strong>#3: SQL Server or MySQL scripts (required if application supports a database</strong>): </span></p>
<p><span style="font-family: Calibri;">The minimum requirement for these scripts is to create a &lsquo;non-admin&rsquo; database user. You can find sample scripts </span><a href="https://www.iis.net/learn/develop/windows-web-application-gallery/database-notes-for-packaging-applications-for-use-with-the-web-application-gallery"><span style="font-family: Calibri;">here</span></a></p>
<p>&nbsp;</p>
<p><span style="font-family: Calibri;"><strong>#4: Application content root folder</strong> </span></p>
<p><span style="font-family: Calibri;">This will contain the content of the application that needs to be deployed to a&nbsp; website </span></p>
<p><span style="font-family: Calibri;"><strong>#5: Additional files that are used with &ldquo;alias&rdquo; provider in manifest.xml:</strong>&nbsp;&nbsp;&nbsp; </span></p>
<p><span style="font-family: Calibri;">Here is an example of a scenario when this is applicable&nbsp; </span></p>
<p><span style="font-family: Calibri;">If you have a PHP application say Moodle, and the core package on the community website does not have a <em>web.config</em> file for the application. But we need the <em>web.config</em> file for deploying it to Azure. In this case, you can use the &ldquo;alias&rdquo; provider as shown here and include &ldquo;<em>web.config</em>&rdquo; file at the root level of the ZIP package</span></p>
<p><span style="font-family: Calibri;">&nbsp;</span></p>
<p><span>&lt;alias to=&rdquo;application_root_folder_name/web.config&rdquo; from=&rdquo;web.config&rdquo; /&gt;</span></p>
<p>&nbsp;</p>
<p><span>During deployment, web deploy will copy the web.config from the root level of the zip file to the site root of the application</span></p>
<p>&nbsp;</p>
<p><span style="font-family: Calibri;">&nbsp;</span></p>
<p><span style="font-family: Calibri;">&nbsp;</span></p>]]></content:encoded>
    </item>
    <item>
      <title>Tips and Tricks to build a Package for Web Application Gallery</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/tips-and-tricks-to-build-a-package-for-web-application-gallery</link>
      <pubDate>Tue, 09 Apr 2013 12:50:00 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/04/09/tips-and-tricks-to-build-a-package-for-web-application-gallery/</guid>
      <description><![CDATA[&nbsp;Building a package for Web Application Gallery does not have to be a daunting task. Here are a...]]></description>
      <content:encoded><![CDATA[<p><span style="font-size: small;">&nbsp;</span><span style="font-size: small;">Building a package for Web Application Gallery does not have to be a daunting task. Here are a few tips and tricks to build a package for Web Application Gallery.&nbsp; </span><span style="font-size: small;">In order to create both these configuration files (manifest and parameters), you need to have a good understanding of the application and the manual installation process of the application on IIS. For identifying what goes into a manifest.xml file and parameters.xml file , these are the <strong><span style="text-decoration: underline;">key things</span></strong> to look for:</span></p>
<p><strong><span style="font-size: small;">#1 : What folder and files require Modify Permissions </span></strong></p>
<p style="padding-left: 30px;"><span style="font-size: small;">The default ACL is ReadandExecute for any folder and file. So include ACLs if there is a folder(s) or files that require MODIFY permissions.</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">For ASPNET applications DO NOT use setAclUser attribute. The default is always Worker Process</span></p>
<p style="padding-left: 30px;"><em><span style="font-size: small;">Example code in manifest file</span></em></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&lt;setAcl &nbsp; &nbsp; path="application/App_Data"&nbsp; &nbsp; setAclAccess="Modify" /&gt;</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">For PHP applications , alywasy use <strong>setAclUser</strong>="anonymousAuthenticationUser"</span></p>
<p style="padding-left: 30px;"><em><span style="font-size: small;">Example code in manifest file</span></em></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&lt;setAcl &nbsp; &nbsp; path="application/sites/default/settings.php" &nbsp; &nbsp; setAclResourceType="File"&nbsp;</span><span style="font-family: courier new,courier;"><span style="font-size: small;">setAclAccess="Modify" &nbsp; &nbsp; setAclUser="anonymousAuthenticationUser" /&gt;</span><span style="font-size: small;">&nbsp;</span></span></p>
<p style="padding-left: 30px;"><span style="font-size: small;"><strong>Note #</strong> you will NEED to create matching parameters for these ACLs in the parameters.xml file. Web deploy understands which content ACLs need to be changes by referencing both the parameter for setAcl provider and the corresponding match in manifest.xml </span></p>
<p><span style="font-size: small;"><strong>#2: Does the application support a database (SQL Server and MySQL)</strong>. </span></p>
<p><span style="font-size: small;">If yes , then you would have to include SQL Scripts:</span></p>
<p style="padding-left: 30px;"><em><span style="font-size: small;">For SQL Server/SQL Azure&nbsp; :&nbsp;</span></em></p>
<ul>
<li>
<div style="padding-left: 30px;"><span style="font-size: small;">One script is required to create a user login</span></div>
</li>
<li>
<div style="padding-left: 30px;"><span style="font-size: small;">One script is required for setting permissions for this newly created user</span></div>
</li>
</ul>
<p style="padding-left: 30px;"><span style="font-size: small;">These tasks can be combined in one SQL script, but will not work if you want your application to be included for Azure App Gallery but will work for Web PI and Web Matrix</span><em><span style="font-size: small;">&nbsp;</span></em></p>
<p style="padding-left: 30px;"><em><span style="font-size: small;">For MySQL :</span></em></p>
<ul>
<li><span style="font-size: small;">&nbsp;Single script required to create the user and setting the permissions for this newly created user</span></li>
</ul>
<p><span style="font-size: small;">Sometimes you may need to include the database schema scripts in the package if you want the database to be configured during deployment . For more details on creating a package that supports a database , refer to this <a href="https://www.iis.net/learn/develop/windows-web-application-gallery/database-notes-for-packaging-applications-for-use-with-the-web-application-gallery">article</a> </span></p>
<p><span style="font-size: small;"><strong>#3: Where is the database information stored in the application </strong></span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">Identify the file where this information is stored and parameterize this database information: database name, host, username , password</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">For <strong>PHP apps</strong> , it is usually a configuration setting in the its config file . For example here is a code snippet for parameterizing Database Name</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&lt;parametername="Database Name"description="Name of the database for your application."defaultValue="app_db"tags="MySQL,dbName"&gt; &nbsp; &nbsp; &lt;parameterEntrytype="TextFile"scope="install.sql"match="PlaceHolderForDbName"/&gt;&lt;/parameter&gt;&lt;parametername="Automatic Database Name PHP File"defaultValue="define('DB_NAME', '{Database &nbsp; Name}');"tags="Hidden, MySQL"&gt; &nbsp; &nbsp; &nbsp; &lt;parameterEntrykind="TextFile"scope="wp-config\.php$"match="define\('DB_NAME', '[^']*'\);"/&gt;&lt;/parameter&gt;</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">&nbsp;&nbsp;</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">For <strong>ASPNET apps</strong> , usually is it a connection string format for example</span></p>
<p style="padding-left: 30px;"><span style="font-family: courier new,courier; font-size: small;">&lt;parameter name="Connection String For Config" defaultValue="Data Source= {DbServer};Database={DbName};uid={DbAdmin};Pwd={DbAdminPW};" tags="Hidden,SQL"&gt;</span><br /><span style="font-family: courier new,courier; font-size: small;">&lt;parameterEntry type="XmlFile" scope="\\web\.config$" match="//connectionStrings/add/@connectionString" /&gt;</span><br /><span style="font-family: courier new,courier; font-size: small;">&lt;/parameter&gt;</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">&nbsp;</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">Note # always use XPATH (if using <em>XmlFile</em> as Type) or Regular expression (if using <em>TextFile</em> as Type) that is generic and will always find a match for the parameter in the configuration file. This is specific to Web Matrix, where the end &ndash;user can change the values of the database name or username. Web Matrix should be able to identify the database and allow the user to access the <span style="text-decoration: underline;"><a href="https://www.microsoft.com/web/post/webmatrix-databases-workspace-help">database within Web Matrix</a></span></span></p>
<p><span style="font-size: small;"><strong>#4: Does this application require additional information from the user </strong></span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">The application may require additional information from the user. If this information needs to be requested from the end-user before deployment, then create parameters to capture this information. If this is handled with the applications &ldquo;configuration scripts&rdquo; or &ldquo;installer&rdquo;, then you don&rsquo;t need to create parameters as this will be handled after a successfully deployment.</span></p>
<p style="padding-left: 30px;"><span style="font-size: small;"><strong>&nbsp;</strong></span></p>
<p><span style="font-size: small;"><strong>#5: Does you application satisfy the security standards for App Gallery&nbsp;&nbsp;</strong></span></p>
<p style="padding-left: 30px;"><span style="font-size: small;">For ASPNET apps, make sure it meets the standard best practices for Security and supports Medium Trust level .&nbsp;For PHP apps, make sure there are Rewrite URLs included in a web.config for the application which can be imported from the application's &nbsp;htaccess files &nbsp;.&nbsp;</span></p>
<p><span style="font-size: medium;">&nbsp;</span></p>
<h3><span style="font-size: medium;">Additional references </span></h3>
<p><span style="font-size: small;">You can find more articles and samples&nbsp;on Web Application Gallery </span><a href="https://www.iis.net/learn/develop/windows-web-application-gallery/database-notes-for-packaging-applications-for-use-with-the-web-application-gallery%20."><span style="color: #0000ff; font-size: small;">here</span></a>&nbsp;.</p>
<p><span style="font-size: small;">&nbsp;</span></p>]]></content:encoded>
    </item>
    <item>
      <title>Creating a Node JS website on Windows Azure website</title>
      <link>https://docs.microsoft.com/archive/blogs/azureappgallery/creating-a-node-js-website-on-windows-azure-website</link>
      <pubDate>Mon, 08 Apr 2013 21:36:00 GMT</pubDate>
      <dc:creator><![CDATA[mksunitha]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/azureappgallery/2013/04/08/creating-a-node-js-website-on-windows-azure-website/</guid>
      <description><![CDATA[NodeJS is one of the OSS&nbsp;stack that is supported on Windows Azure . You can setup a Node JS...]]></description>
      <content:encoded><![CDATA[<p>NodeJS is one of the OSS&nbsp;stack that is supported on Windows Azure . You can setup a Node JS site with Windows Azure Cloud service as seen in this <a href="https://www.windowsazure.com/en-us/develop/nodejs/tutorials/web-app-with-express/"> article </a>which is&nbsp;a series of manual steps involved to set up a Node JS website . Window Azure websites provides you with a list of Node JS website templates that you can use to setup a Node JS website in just a few clicks&nbsp;. This blog will show you how to set up a Node JS website using the Node JS Starter Site template available in the Azure Application Gallery.</p>
<p>Once you are logged into the Management portal , you will need to create a new site &ldquo;from gallery&rdquo; as shown below</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0160.2pic.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0160.2pic.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0160.2pic.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0160.2pic.png" alt="" width="323" height="105" border="0" /></a>&nbsp;</p>
<p>Choose&nbsp;templates category and then select <em>Node JS starter site</em></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0121.node1.PNG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0121.node1.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/0121.node1.PNG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/0121.node1.PNG" alt="" width="372" height="266" border="0" /></a></p>
<p>Enter the site name , say &lsquo;nodejssite&rsquo; and that&rsquo;s it . Your NodeJS website is ready to be deployed .</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/8345.node2.PNG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/8345.node2.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/8345.node2.PNG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/300x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/8345.node2.PNG" alt="" border="0" /></a></p>
<p>Once the&nbsp;Node JS website has been successfully deployed ,&nbsp; you can click on Web Matrix button to access the site&rsquo;s content</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/2337.node3.PNG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/2337.node3.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/2337.node3.PNG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/300x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/2337.node3.PNG" alt="" border="0" /></a></p>
<p>Browse your newly created&nbsp;Node JS website on windows azure</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/5633.node5.PNG" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/5633.node5.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/58/77/5633.node5.PNG" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-58-77/5633.node5.PNG" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;If you want to create&nbsp;a Node JS website from scratch you can use the Node JS Empty template or if you want&nbsp;create a website with Node JS Express framework then use &nbsp;Node JS Express site template&nbsp; . They can be easily customized to your needs . Have fun building your website with Node JS on Azure .</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
  </channel>
</rss>