Рейтинг:0

Размещение приложения .NET Core Razor в Ubuntu 20.04 с помощью NGINX

флаг cn

Я начал пытаться самостоятельно размещать некоторые проекты, чтобы лучше понять принципы работы в сети/хостинга, и у меня возникла проблема с размещением приложения .NET CORE в Visual Studio в соответствии с шаблоном Razor MVVM.

Главный вопрос в том, возможно ли это вообще или это должно быть на Windows Server?

Сначала я хотел создать два веб-сайта в одном домене, т. е. game.domain.com и api.domain.com.

У меня есть один работающий API ядра .net, поэтому, если я зайду на api.domain.com/swagger/index.html, я увижу свои контроллеры и все, что работает нормально. Однако я подумал, что, поскольку я написал приложение для Razor с ядром .net, я также мог бы разместить его на том же сервере Ubuntu с NGINX.

Итак, сейчас у меня есть два сайта nginx, настроенные в папках.

  • /var/www/api.domain.com/html
  • /var/www/twerkle.domain.com/html

Внутри каждой из html-папок у меня есть базовый индексный файл, который служит фиктивной целевой страницей, просто чтобы доказать, что я могу получить доступ к любому сайту через общедоступный IP-адрес, и он направляет его через NGINX. Однако я не могу заставить страницу twerkle.domain.com отображать основную страницу razor .cshtml.

я следил за этим соединять чтобы настроить службы, чтобы он запускал dotnet в папке и запускал и отображал две службы.

Службы Ubuntu работают

Каждый учебник или документация, которые я видел, в основном касались основных приложений .net, использующих их в качестве API.

Здесь показана основная отображаемая целевая страница index.html. TwerklePage

Рейтинг:0
флаг cn

Я пересмотрел файл /etc/nginx/nginx.conf и заметил, что у меня есть две записи для адреса game.domain.com. Я изменил его, чтобы был только один. Я также добавил дополнительный /wwwroot каталог, а также индекс index.cshtml линии. И я заметил, что в моей папке публикации на сервере были только основные .DLL и пустая папка wwwroot, поэтому я также переместил файлы .cshtml. Теперь я могу зайти на twerkle.domain.com и получить ожидаемое приложение.

    сервер {
      слушать 80;
      имя_сервера twerkle.domain.com;
      корень /var/www/twerkle.domain.com/html/wwwroot; <-- /wwwoot был добавлен
      индекс index.cshtml; <-- эта строка была добавлена
      место расположения / {
        try_files $uri $uri/ $uri.cshtml = 404;
        proxy_pass http://localhost:5002;
        прокси_http_версия 1.1;
        proxy_set_header Обновить $http_upgrade;
        proxy_set_header Поддержание соединения;
        proxy_set_header Хост $host;
        proxy_cache_bypass $http_upgrade;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $ схема;
      }
    }

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.