In this post I will describe on how to connect to the Azure Web Sites via FTP using FileZilla as the client. The readers are free to choose their FTP client

 Download publishsettings file from Azure Portal:

  • Go to the Windows Azure Management Portal.
  • Click on Web Sites.
  • Go to the Site's DASHBOARD page and click on "Download the publish profile"
  • Save the file and open it in notepad.exe.
  • The file contains 2 <publishProfile> sections. One for Web Deploy and another for FTP.
  • Under the <publishProfile> section for FTP make a note of the following values:
    • publishUrl (hostname only)
    • userName --------------------------> This is the information you are looking for
    • userPWD

    Below is a publishsettings file from one of my test sites. Every file has unique username and password. The user could also reset the password, however that is beyond the scope of this post. I will discuss in another post altogether.

<publishData>
       <publishProfile      
              profileName="kaushals - Web Deploy"
             
publishMethod="MSDeploy"
              publishUrl="kaushals.scm.azurewebsites.net:443"
              msdeploySite="kaushals"
              userName="$kaushals"
              userPWD="nGc9c8RmmRtwqF8hx2Fg6n8osiczuo8sJaZ32C02ZnBMzS627uagERwHM4NE"
              destinationAppUrl="http://kaushals.azurewebsites.net"
              SQLServerDBConnectionString=""
              mySQLDBConnectionString=""hostingProviderForumLink=""
              controlPanelLink="http://windows.azure.com">
              <databases/>
       </publishProfile>
       <publishProfile
              profileName="kaushals - FTP"
             
publishMethod="FTP"
              publishUrl="ftp://waws-prod-db3-011.ftp.azurewebsites.windows.net/site/wwwroot"
              ftpPassiveMode="True"
              userName="kaushals\$kaushals"
             
userPWD="nGc9c8RmmRtwqF8hx2Fg6n8osiczuo8sJaZ32C02ZnBMzS627uagERwHM4NE"
              destinationAppUrl="http://kaushals.azurewebsites.net"
              SQLServerDBConnectionString=""
              mySQLDBConnectionString=""
              hostingProviderForumLink=""
              controlPanelLink="http://windows.azure.com">
              <databases/>
       </publishProfile>
</publishData>

 NOTE: We need only the hostname (waws-prod-db3-011.ftp.azurewebsites.windows.net) from the FTP's publishURL section and not the complete path.

Connect using FileZilla:

  • Download and install FileZilla, Click here to download FileZilla.
  • Launch FileZilla.
  • Go to File Menu —>Site Manager.
  • Under Site Manager click on New Site button and give it a descriptive name.
  • Under the General tab set the values  for the following accordingly
    • Host: Paste the hostname from publishUrl obtained from the publishsettings file above.

    • Logon Type: set this to Normal.
    • User: Paste the userName obtained from the publishsettings file above.
    • Password: Paste the userPWD obtained from the publishsettings file above.
  • Click on Connect to connect to the site over FTP.
  • You would see two folder under the root: Logfiles and Site.

  • Logfiles folder as the name indicates provides storage for various logging options you see under the CONFIGURE management page on the Azure Portal.
  • Site folder is where the application resides. To be more specific the code resides here: /site/wwwroot

Thus, Azure Web Sites gives the user the flexibility to create/upload/download files/folder(s) to their corresponding site via FTP. HTH!