如何解决Azure App Service中「您无权查看此目录或页面」错误?
解决Next.js 13通过Github Actions部署Azure App Service权限问题及应用无法显示的方案
检查Azure部署凭据有效性
- 确认Github Secrets中配置的
AZURE_WEBAPP_PUBLISH_PROFILE是从Azure App Service后台生成的最新发布配置文件,该文件需包含完整的网站部署权限。避免使用个人Azure账号密钥,优先用App Service专用发布凭据。 - 若怀疑凭据失效,重新生成发布配置文件并更新到Github Secrets中。
验证Next.js构建输出目录配置
- Next.js 13(App Router)默认构建输出为
.next目录,确保Github Actions部署步骤指定了正确的发布路径:- name: Deploy to Azure Web App uses: azure/webapps-deploy@v2 with: app-name: ${{ secrets.AZURE_WEBAPP_NAME }} publish-profile: ${{ secrets.AZURE_WEBAPP_PUBLISH_PROFILE }} package: ./.next - 若自定义了构建输出目录,需同步修改部署步骤中的
package参数值。
配置Azure App Service启动命令与权限
- 进入Azure Portal的App Service后台,在配置 > 常规设置中设置启动命令为:
npm run start - 确认App Service所属的应用服务计划资源配额充足,免费/共享层可能因资源限制导致启动失败,可临时切换至基本层测试。
修复部署后文件权限
- 通过Azure Portal的高级工具 > Kudu进入网站文件系统,检查
wwwroot/.next目录及子文件的权限,确保读取权限正常。 - 可在Github Actions部署步骤前添加权限修复命令:
- name: Fix build directory permissions run: chmod -R 755 ./.next
查看日志定位具体问题
- 查看Azure App Service的日志流或部署中心日志,获取权限报错的具体路径或原因(如无法读取静态资源目录)。
- 检查Github Actions的部署日志详情,排查是否有未被高亮的权限警告信息。
内容的提问来源于stack exchange,提问作者liliana lopez
相关产品推荐
相关产品推荐

