Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье вы создадите веб-приложение с выбранной платформой, запустите его локально, а затем разверните в Статические веб-приложения Azure.
Необходимые компоненты
Для работы с этим учебником необходимы указанные ниже компоненты.
| Ресурс | Description |
|---|---|
| Подписка Azure | Если ее нет, можно создать учетную запись бесплатно. |
| Node.js | Установите версию 20.0 или более позднюю. |
| Azure CLI | Установите версию 2.6x или более позднюю. |
Вам также нужен текстовый редактор. Для работы с Azure рекомендуется Visual Studio Code .
Вы можете запустить приложение, создаваемое в этой статье, на выбранной платформе, включая Linux, macOS, Windows или подсистема Windows для Linux.
Создание веб-приложения
- Откройте окно терминала.
Выберите соответствующий каталог для кода, а затем выполните следующие команды.
npm create vite@latest swa-vanilla-demo -- --template=vanilla cd swa-vanilla-demo npm install npm run devПри выполнении этих команд сервер разработки выводит URL-адрес веб-сайта. Выберите ссылку, чтобы открыть ее в браузере по умолчанию.

Выберите соответствующий каталог для кода, а затем выполните следующие команды.
npx --package @angular/cli@latest ng new swa-angular-demo --ssr=false --defaults cd swa-angular-demo npm startПри выполнении этих команд сервер разработки выводит URL-адрес веб-сайта. Выберите ссылку, чтобы открыть ее в браузере по умолчанию.

Выберите соответствующий каталог для кода, а затем выполните следующие команды.
npm create vite@latest swa-react-demo -- --template react cd swa-react-demo npm install npm run devПри выполнении этих команд сервер разработки выводит URL-адрес веб-сайта. Выберите ссылку, чтобы открыть ее в браузере по умолчанию.

Выберите соответствующий каталог для кода, а затем выполните следующие команды.
npm create vite@latest swa-vue-demo -- --template vue cd swa-vue-demo npm install npm run devПри выполнении этих команд сервер разработки выводит URL-адрес веб-сайта. Выберите ссылку, чтобы открыть ее в браузере по умолчанию.

- Выберите Cmd/CTRL+C , чтобы остановить сервер разработки.
Создание статического веб-приложения в Azure
Вы можете создать статическое веб-приложение с помощью портал Azure, Azure CLI, Azure PowerShell или Visual Studio Code (с расширением Статические веб-приложения Azure). В этом руководстве используется Azure CLI.
Войдите в Azure CLI:
az loginПо умолчанию эта команда открывает браузер для завершения процесса. Azure CLI поддерживает различные методы входа , если этот метод не работает в вашей среде.
Если у вас несколько подписок, может потребоваться выбрать подписку. Текущую подписку можно просмотреть с помощью следующей команды:
az account showЧтобы выбрать подписку, можно выполнить
az account setкоманду.az account set --subscription "<SUBSCRIPTION_NAME_OR_ID>"Создать группу ресурсов.
Группы ресурсов используются для группирования ресурсов Azure вместе.
az group create -n swa-tutorial -l centralus --query "properties.provisioningState"Параметр
-nссылается на имя сайта, а-lпараметр — имя расположения Azure. Команда завершается так--query "properties.provisioningState", что команда возвращает только сообщение об успешном выполнении или ошибке.Создайте статическое веб-приложение в созданной группе ресурсов.
az staticwebapp create -n swa-demo-site -g swa-tutorial --query "defaultHostname"Параметр
-nссылается на имя сайта, а-gпараметр ссылается на имя группы ресурсов Azure. Убедитесь, что вы указали то же имя группы ресурсов, что и на предыдущем шаге. Статическое веб-приложение глобально распределено, поэтому расположение не важно для развертывания приложения.Команда настроена для возврата URL-адреса веб-приложения. Вы можете скопировать значение из окна терминала в браузер, чтобы просмотреть развернутое веб-приложение.
Настройка для развертывания
Добавьте файл в
staticwebapp.config.jsonкод приложения со следующим содержимым:{ "navigationFallback": { "rewrite": "/index.html" } }Определение резервного маршрута позволяет сайту серверировать
index.htmlфайл для любых запросов, сделанных в домене.Проверьте этот файл в системе управления исходным кодом (например, git), если вы используете его.
Установите интерфейс командной строки Статические веб-приложения Azure (SWA) в проекте.
npm install -D @azure/static-web-apps-cliИнтерфейс командной строки SWA помогает разрабатывать и тестировать сайт локально перед развертыванием в облаке.
Создайте новый файл для проекта и назовите его
swa-cli.config.json.В
swa-cli.config.jsonфайле описывается создание и развертывание сайта.После создания этого файла можно создать его содержимое
npx swa initс помощью команды.npx swa init --yesСоздайте приложение для распространения.
npx swa buildИспользуйте интерфейс командной строки SWA для входа в Azure.
npx swa login --resource-group swa-tutorial --app-name swa-demo-siteИспользуйте то же имя группы ресурсов и статическое имя веб-приложения, которое вы создали в предыдущем разделе. При попытке войти в систему браузер открывается, чтобы завершить процесс при необходимости.
Предупреждение
Angular версии 17 и более поздних версий поместите распространяемые файлы в подкаталог выходного пути, который можно выбрать. Интерфейс командной строки SWA не знает конкретное расположение каталога. Ниже показано, как правильно задать этот путь.
Найдите созданный файл index.html в проекте в папке dist/swa-angular-demo/browser .
SWA_CLI_OUTPUT_LOCATIONЗадайте переменную среды в каталог, содержащий файл index.html:export SWA_CLI_OUTPUT_LOCATION="dist/swa-angular-demo/browser"
Развертывание сайта в Azure
Разверните код в статическом веб-приложении:
npx swa deploy --env production
Развертывание приложения может занять несколько минут. После завершения отобразится URL-адрес вашего сайта.

В большинстве систем можно выбрать URL-адрес сайта, чтобы открыть его в браузере по умолчанию.
Очистка ресурсов (необязательно)
Если вы не продолжаете работу с другими руководствами, удалите группу ресурсов и ресурсы Azure:
az group delete -n swa-tutorial
При удалении группы ресурсов удалите все содержащиеся в ней ресурсы. Отменить это действие невозможно.