Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Примечание.
Это не последняя версия этой статьи. В текущей версии см. версию .NET 10 этой статьи.
Предупреждение
Эта версия ASP.NET Core больше не поддерживается. Дополнительные сведения см. в политике поддержки .NET и .NET Core. Актуальная версия — см. версию этой статьи для .NET 9.
В этой статье объясняется, как разместить и развернуть Blazor WebAssembly с помощью Nginx.
Следующий файл nginx.conf упрощен для демонстрации того, как настроить Nginx для отправки файла index.html, когда не удается найти соответствующий файл на диске.
events { }
http {
server {
listen 80;
location / {
root /usr/share/nginx/html;
try_files $uri $uri/ /index.html =404;
}
}
}
При установке ограничения скорости всплеска NGINX с использованием limit_req и limit_req_zone, приложениям может потребоваться большое значение Blazor WebAssemblyburst/ для обработки относительно большого количества запросов приложения. Изначально задайте для этого параметра значение не менее 60.
http {
limit_req_zone $binary_remote_addr zone=one:10m rate=60r/s;
server {
...
location / {
...
limit_req zone=one burst=60 nodelay;
}
}
}
Увеличьте значение, если средства разработчика в браузере или средство контроля сетевого трафика сообщают о том, что запросы возвращают код состояния 503, служба недоступна.
Дополнительные сведения о конфигурации веб-сервера Nginx в рабочей среде см. в разделе Создание файлов конфигурации NGINX Plus и NGINX.
Размещенное развертывание в Linux (Nginx)
Настройте приложение с ForwardedHeadersOptions для перенаправления заголовков X-Forwarded-For и X-Forwarded-Proto, следуя инструкциям в разделе Настройка ASP.NET Core для работы с прокси-серверами и подсистемами балансировки нагрузки.
Дополнительные сведения о настройке базового пути приложения, включая конфигурацию пути вложенного приложения, см. в разделе ASP.NET Core Blazor базовый путь приложения.
Следуйте указаниям для приложения ASP.NET Core SignalR со следующими изменениями:
Удалите конфигурацию для буферизации прокси-сервера (
proxy_buffering off;), так как этот параметр применяется только к событиям, отправленным сервером (SSE), которые не относятся к взаимодействию между клиентом и сервером в приложении Blazor.Измените путь
locationс/hubroute(location /hubroute { ... }) на путь к вложенному приложению/{PATH}(location /{PATH} { ... }), где заполнитель{PATH}является путем к вложенному приложению.В следующем примере сервер настраивается для приложения, отвечающего на запросы по корневому пути
/:http { server { ... location / { ... } } }В следующем примере настраивается путь вложенного приложения
/blazor:http { server { ... location /blazor { ... } } }
Дополнительные ресурсы
- Разместите ASP.NET Core на Linux с Nginx
- Документация nginx:
- Разработчики на форумах поддержки, отличных от Майкрософт: