Apr 03 2023
03:48 AM
- last edited on
Mar 05 2024
02:36 PM
by
TechCommunityAP
Apr 03 2023
03:48 AM
- last edited on
Mar 05 2024
02:36 PM
by
TechCommunityAP
Hello All,
Whenerver I use the "Archive Files" task in the Azure DevOps build pipeline, upon release, I get the following error on my azurewebsite: You do not have permission to view this directory or page.
However, when I use the Copy Files" task as a workaround, the website works just fine. The problem is that this task takes almost 10x as long as the Archive Files task. Any help will be appreciated in resolving this issue.
Apr 03 2023 05:49 PM
Are you saying webapp, can try to check the log below:
Login to Azure > App Services > Your Web App > App Service logs, turn on Detailed Error Messages or turn on all of the logging options
Apr 05 2023 09:33 PM
Apr 05 2023 09:52 PM - edited Apr 06 2023 06:00 AM
Solution@techieg4 FInally resolved it by unchecking the "Prepend root folder name to archive path" checkbox (see image below), which was zipping up everything within a "build" folder and deploying it as such. So, the website could only see the "build" directory in wwwroot, which triggered the error message since browsing to the url was trying to access this folder rather than the index.html that was supposed to be at the wwwroot.. Once I unchecked that checkbox, no more zipping up in the "build" folder and zipped files get deployed in wwwroot as it should. All is well!
Jan 03 2024 08:14 AM
I am using AzureResourceManagerTemplateDeployment@3 task to deploy an azure ad b2c tenant using the release pipeline.
When I was manually running the script using my local PowerShell then it was running smoothly but in release pipeline, I got the same error as yours:
Now the thing is that I tried giving every related admin rights like subscription owner and ad b2c global administrator. I wasn't able to resolve the issue. Could you please help me with this?
Jul 14 2024 04:57 PM
This helped me. Hope it helps you.
Add this to your web.config in the root of your project
<configuration>
<system.webServer>
<!-- indicates that the server.js file is a node.js application
to be handled by the iisnode module -->
<handlers>
<add name="iisnode" path="server.js" verb="*" modules="iisnode" />
</handlers>
<!-- adds server.js to the default document list to allow
URLs that only specify the application root location,
e.g. http://mysite.azurewebsites.net/ -->
<defaultDocument enabled="true">
<files>
<add value="server.js" />
</files>
</defaultDocument>
<!-- Ensure all errors are sent to the node.js application for better error handling -->
<httpErrors existingResponse="PassThrough" />
<!-- Ensure the Node.js application can handle all URLs -->
<rewrite>
<rules>
<rule name="NodeJS" stopProcessing="true">
<match url="/*" />
<action type="Rewrite" url="server.js" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
create a server.js file and add the code below
const { createServer } = require("http");
const { parse } = require("url");
const next = require("next");
const dev = process.env.NODE_ENV !== "production";
const app = next({ dev });
const handle = app.getRequestHandler();
app.prepare().then(() => {
createServer((req, res) => {
const parsedUrl = parse(req.url, true);
handle(req, res, parsedUrl);
}).listen(process.env.PORT || 3000, (err) => {
if (err) throw err;
console.log("> Ready on http://localhost:3000");
});
});
finally in your package.json, edit your start script
"start": "node server.js"
Apr 05 2023 09:52 PM - edited Apr 06 2023 06:00 AM
Solution@techieg4 FInally resolved it by unchecking the "Prepend root folder name to archive path" checkbox (see image below), which was zipping up everything within a "build" folder and deploying it as such. So, the website could only see the "build" directory in wwwroot, which triggered the error message since browsing to the url was trying to access this folder rather than the index.html that was supposed to be at the wwwroot.. Once I unchecked that checkbox, no more zipping up in the "build" folder and zipped files get deployed in wwwroot as it should. All is well!