Azure: "You do not have permission to view this directory or page

别等时光非礼了梦想. 提交于 2019-11-30 03:29:44

问题


I have created a node.js application in Visual Studio 2015 using the Azure SDK 2.7 and the Node.js Tools.

I have successfully set up CI with BitBucket in my web app and I can see that changes to the repository do indeed trigger a build and deploy.

However, the page I reach (http://ftct.azurewebsites.net/) complains: You do not have permission to view this directory or page.

I have specified a default file (kinda) in my node.js by using: app.get('/', routes.index);

So trying to navigate directly to this file, http://ftct.azurewebsites.net/signin.html, yields a different error: The resource you are looking for has been removed, had its name changed, or is temporarily unavailable.

I configured the app to run on port 1337 in Visual Studio, but using this port doesn't overcome the problem. Trying to navigate to a ported address yields a timeout.

Any ideas?


回答1:


I had the same issue,

you need web.config, package.json, server.js at the root

web.config:

<configuration>
    <system.webServer>
        <handlers>
            <!-- indicates that the app.js file is a node.js application to be handled by the iisnode module -->
            <add name="iisnode" path="server.js" verb="*" modules="iisnode" />
        </handlers>
        </system.webServer>
</configuration>

in package.json you need to have:

 ...
  "scripts": {
    "start": "node server"
  },
...

and in your server.js make sure that you set the server port number to

process.env.PORT || 1337;




回答2:


Edit: Try creating "Node JS Empty Web App" from the gallery at https://portal.azure.com and compare the web.config and the site with what you have. It's possible that you're missing some config settings.

Previous answer: first off, only ports 80 and 443 are available in Azure Web Apps (the new name of Azure Websites). So port 1337 will not work. Reconfigure your app to run on port 80 or 443. Regarding the permission issue, do you have App Service Authentication enabled? Make sure that is disabled, by editing the Web App's application settings as below.




回答3:


You can try to create a instance of "Node JS Empty Web App" from the Gallery at the old portal http://manage.windowsazure.com, see below.

Then, doing the set up deployment from source control at the quick glance of the web app dashboard page to deploy your web app.

Now, browse the web app http://<app-name>.azurewebsites.net that works fine.




回答4:


You're probably missing the web.config file which is required if iisnode is used to run node processes behind iis or iis express.

https://github.com/tjanczuk/iisnode/blob/master/src/samples/configuration/web.config




回答5:


In my case, I got this error when using ZipDeploy: please be sure to compress files within the root folder, so that the Node.js files could be listed on Kudu at the a base level, instead of one folder more. Thanks to mike-urnun-msft.




回答6:


Also when you deploy the zip file via the azurewebsites.net/ZipDeployUI, make sure that you see the files being unzipped on the /wwwroot level.

If the files show up under /wwwroot/your-app-folder/ you may get this permission issue. I took a long time to figure this out! Hope it helps.



来源:https://stackoverflow.com/questions/33835172/azure-you-do-not-have-permission-to-view-this-directory-or-page

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!