Добрый день!
У моего коллеги есть сайт node.js (next.js), его сайт работает нормально, когда мы собираем и запускаем через консоль (npm run build и npm start).
Мы разместили его на виртуальной машине Azure (Windows Server 2016 IIS, iisnode и urlrewrite установлены), создали конвейер и получили артефакты (папка «.next» при запуске сборки) и развернули его вОднако IIS нам все еще нужно ручное взаимодействие для размещения файла web.config.Ниже приведен файл web.config
<!-- indicates that the hello.js file is a node.js application
to be handled by the iisnode module -->
<handlers>
<add name="iisnode" path="service-worker.js" verb="*" modules="iisnode" />
</handlers>
<!-- use URL rewriting to redirect the entire branch of the URL namespace
to hello.js node.js application; for example, the following URLs will
all be handled by hello.js:
http://localhost/node/express/myapp/foo
http://localhost/node/express/myapp/bar
-->
<rewrite>
<rules>
<rule name="AMS" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>
Но когда мы заходим на сайт, он выдает ошибку 403, которая должна предоставить страницу по умолчанию.(Я потерян здесь и не могу запустить его веб-сайт через IIS)
Примечание: его другой веб-сайт работает нормально (потому что у него есть service-worker.js).
Кто-нибудь испытывает развертывание Next.JS на IIS?Заранее спасибо.