Azure: служба приложений: развертывание виртуального каталога - PullRequest
0 голосов
/ 19 октября 2018

У меня есть базовое приложение asp.net, развернутое на веб-сайте Azure, и домен www.somewebsite.org.Мой файл web.config находится на сайте \ wwwroot \ web.config.Его содержимое:

<configuration>
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet" arguments=".\App1.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout">
            <environmentVariables>
            </environmentVariables>
        </aspNetCore>
  </system.webServer>
</configuration>

Я пытаюсь развернуть другое основное приложение asp.net с виртуальным путем www.somewebsite.org/kiosk, и я скопировал полный каталог в site \ wwwroot \ kiosk и в Интернете.Конфигурационный файл находится на сайте \ wwwroot \ kiosk \ web.config.Его содержимое:

<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <handlers>            
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />      
    </handlers>
      <aspNetCore processPath="dotnet" arguments=".\Kiosk.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" />
    </system.webServer>
  </location>
</configuration>

На портале Azure в настройках приложения для моего сайта у меня / / site \ wwwroot / kiosk - site \ wwwroot \ kiosk

Когда я пытаюсь перейти наwww.somewebsite.org, сайт app1 загружен правильно.Но когда я захожу на www.somewebsite.org/kiosk, приложение киоска не загружается.Страница возвращается с 500 внутренних ошибок сервера.Как я могу исправить эту ошибку?Можно ли даже разместить несколько приложений из нескольких виртуальных путей на одном веб-сайте в Azure?

Ответы [ 2 ]

0 голосов
/ 22 октября 2018

В моем файле web.config под-приложения я сделал следующее, и он начал работать:

<configuration>
    <system.webServer>
      <handlers>            
        <add name="aspNetCore_TEMP" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />      
    </handlers>
      <aspNetCore processPath="dotnet" arguments=".\Kiosk.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" />
    </system.webServer>

</configuration>

Теперь оба сайта работают.

Спасибо за вашу помощь.

NH

0 голосов
/ 22 октября 2018

Я воспроизвожу вашу ошибку, и вам просто нужно добавить <location path="." inheritInChildApplications="false"> в ваш web.config файл, который находится под site\wwwroot\web.config.

<configuration>
  <location path="." inheritInChildApplications="false">
  <system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet" arguments=".\App1.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout">
            <environmentVariables>
            </environmentVariables>
        </aspNetCore>
  </system.webServer>
</location>
</configuration>
...