Getting error after pushing to Windows Azure: You do not have permission to view this directory or page

I have googled for the past 3 hours and found nothing on what to do with respect to the windows azure problem:

You do not have permission to view this directory or page.

I did a git master push to azure and the deployment was successful. I also turned on the failed request tracing but nothing shows up but the above statement.

Any ideas on how to troubleshoot this?

I just tested that if you don't deploy your main node.js file as server.js you will get this error because the web.config is specifically looking for server.js as below:

  <handlers>
       <add name="iisnode" path="server.js" verb="*" modules="iisnode"/>
 </handlers>

To further troubleshot this issue you can access the website over FTP as described here.

Not specific to node.js but updating in case it helps others facing this issue for a regular web application. This can also happen if the index.html file is not present or is not found because it is in a sub-directory

AvkashChauhan's answer did lead me in the write direction but I also had to add proper rewriting rules. Here is my complete web.config

<?xml version="1.0"?>
<configuration>
  <system.web>
    <compilation batch="false" />
  </system.web>
  <system.webServer>
    <handlers>
      <add name="iisnode" path="server.js" verb="*" modules="iisnode" />
    </handlers>
    <rewrite>
      <rules>
        <rule name="myapp">
          <match url="/*" />
          <action type="Rewrite" url="server.js" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

I hit this error too. I am using MVC and the reason for the error was that on my layout page I had a call to an action that isn't accessible to anonymous users:

@Html.Action("GetMenu", "Users")  

For information, I register a AuthorizeAttribute() global filter in Application_Start and my Login action is decorated with AllowAnonymous:

    [HttpPost]
    [AllowAnonymous]
    [ValidateAntiForgeryToken]
    public ActionResult Login(LoginModel model, string returnUrl)
    {

My website did work previously on IIS7, but Azure is less forgiving. I fixed the problem by adding a check like this:

@if (User.Identity.IsAuthenticated)
{
     @Html.Action("GetMenu", "Users")
}

I just came across this issue and in my case it was the ipSecurity configuration that was causing the issue. Just hd to go and change the allowUnlisted to true.

 <security>
   <ipSecurity allowUnlisted="false"> 
 </security>