Skip to content

Глава 2.1: Подготовка окружения Laravel

Время изучения: 1-2 часа

1. Зачем нужно локальное окружение?

Представьте, что вы строите космический зонд. Прежде чем запускать его в космос, вы тестируете все системы на Земле. Локальное окружение — это ваша "контрольная лаборатория" для кода:

  • Безопасные эксперименты без влияния на боевой сервер
  • Быстрое развертывание зависимостей
  • Легкое переключение между версиями ПО

💡 Космическая аналогия: Herd = Мобильный стартовый комплекс Docker = Тренажер космической станции XAMPP = Стационарный испытательный стенд


2. Установка Herd

Herd — современный инструмент для управления PHP-окружением (аналог Laravel Valet).

Шаги установки:

  1. Скачайте установщик: herd.laravel.com
  2. Запустите Herd Installer.exe → Next → Install
  3. После установки:
    • Откройте Herd из меню Пуск. Иконка приложения появится в системном трее (рядом с часами).
    • Щелкните по иконке Herd: убедитесь, что Nginx и нужная версия PHP (например, 8.3) запущены (отмечены зеленой точкой).
    • Перейдите к Herd Paths и добавьте папку, где будут храниться ваши проекты (например, C:\Users\YourUser\Code). Herd автоматически создаст для каждого подкаталога в этой папке красивый домен вида имя-папки.test.

⚠️ Важно! При установке: - Разрешите доступ в сеть (если запросит брандмауэр) - Проверьте путь в PATH: C:\Program Files\Herd\bin

Проверка работы:

  1. Щелкните по иконке Herd в системном трее.
  2. Убедитесь, что сервисы Nginx и PHP активны (зеленые индикаторы).
  3. Создайте в вашей папке для проектов (например, C:\Users\YourUser\Code) папку test, а внутри файл index.php с содержимым <?php phpinfo(); ?>.
  4. В Herd через вкладку sites укажите путь к папке test и нажмите "Add site".
  5. Откройте в браузере адрес http://test.test . Вы должны увидеть страницу с информацией о PHP.

3. Альтернативные способы (кратко)

Инструмент Для кого Плюсы Минусы
Laravel Sail (Docker) Для всех уровней Полная изоляция, повторяемость окружения, официальная поддержка Laravel Требует установки Docker, потребляет больше ресурсов
XAMPP Начинающие Всё в одном установщике (All-in-One) Громоздкость, сложнее управлять версиями ПО, засоряет систему
Laragon Windows-разработчики Быстрый, легко переключать версии, автонастройка хостов Требует ручной перезагрузки веб-сервера при добавлении нового проекта

Пример с Docker (Laravel Sail):

# После установки Docker
./vendor/bin/sail up


4. Установка PHP и Composer

Если не используете Herd:

  1. PHP:
    • Скачайте PHP 8.3 для Windows
    • Распакуйте в C:\PHP
    • Добавьте в PATH:
      # Рекомендуется выполнять в PowerShell от имени администратора
      [Environment]::SetEnvironmentVariable("Path", "$env:Path;C:\PHP", "User")
      
  2. Composer:

5. Установка PostgreSQL

Для работы с базами данных:

  1. Скачайте PostgreSQL 15
  2. Запустите установщик:
  3. Пароль для суперпользователя: admin (или свой)
  4. Порт: 5432 (стандартный)
  5. После установки:
  6. Откройте pgAdmin 4 (графический клиент)

    Вы можете использовать любой другой клиент для работы с базой данных, например, DBeaver, DataGrip или даже командную строку. Я предпочитаю DBeaver - но это дело вкуса

  7. Создайте базу для проекта: space_api

6. Установка Laravel

  1. Через Composer:

    composer create-project laravel/laravel space-api
    cd space-api
    

  2. Инициализация Git (опционально):

    git init
    git add .
    git commit -m "Старт космического проекта"
    

  3. Запуск и проверка сервера:

    Если вы используете Herd: Убедитесь, что ваш проект space-api находится в папке, которую вы добавили в Herd. Откройте в браузере адрес: http://space-api.test Вы должны увидеть стартовую страницу Laravel. Сервер уже работает благодаря Herd!

Если вы НЕ используете Herd (ручная установка):

php artisan serve
Откройте в браузере: http://localhost:8000 → Должна появиться стартовая страница Laravel!

При создании проекта в Herd:

Просто следуйте инструкциям на экране. Для удобства далее название проекта — space-api. Starter kit - любой, но я предпочитаю React.

Обязательно включите phpunit - он пригодится нам далее

7. Настройка проекта

Важные файлы:

  • .env — настройки окружения (ключи, базы данных)
  • config/database.php — конфигурация СУБД
  • composer.json — зависимости PHP

Подключение БД к проекту:

Добавьте в .env:

DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=space_api
DB_USERNAME=postgres # Логин для postgres
DB_PASSWORD=admin # Пароль для postgres

Первые команды Artisan:

php artisan key:generate  # Генерация ключа приложения
php artisan migrate:fresh # Миграция базы данных (При переходе на postgres)


Квиз для закрепления

1. Herd — это...

2. Какой инструмент Laravel использует для управления зависимостями PHP?

3. Стандартный порт для PostgreSQL:

4. Команда для создания проекта Laravel через Composer:

5. Файл с настройками окружения?


🚀 Итог главы

Вы развернули "стартовую площадку" для космического API! Теперь у вас есть:

  • 🛠️ Локальное окружение (Herd или ручная установка) с PHP и Nginx
  • 🐘 Установленный сервер баз данных PostgreSQL
  • 🚀 Laravel-проект space-api
  • 🔌 Настроенное подключение к базе данных

📌 Проверка:

  • Если вы с Herd: Убедитесь, что по адресу http://space-api.test открывается сайт.
  • Если без Herd: Убедитесь, что команда php artisan serve работает и сайт открывается по адресу http://localhost:8000.
  • В любом случае, проверьте, что в pgAdmin 4 видна созданная база space_api.