Глава 2.1: Подготовка окружения Laravel
Время изучения: 1-2 часа
1. Зачем нужно локальное окружение?
Представьте, что вы строите космический зонд. Прежде чем запускать его в космос, вы тестируете все системы на Земле. Локальное окружение — это ваша "контрольная лаборатория" для кода:
- Безопасные эксперименты без влияния на боевой сервер
- Быстрое развертывание зависимостей
- Легкое переключение между версиями ПО
💡 Космическая аналогия: Herd = Мобильный стартовый комплекс Docker = Тренажер космической станции XAMPP = Стационарный испытательный стенд
2. Установка Herd
Herd — современный инструмент для управления PHP-окружением (аналог Laravel Valet).
Шаги установки:
- Скачайте установщик: herd.laravel.com
- Запустите
Herd Installer.exe
→ Next → Install - После установки:
- Откройте Herd из меню Пуск. Иконка приложения появится в системном трее (рядом с часами).
- Щелкните по иконке Herd: убедитесь, что Nginx и нужная версия PHP (например, 8.3) запущены (отмечены зеленой точкой).
- Перейдите к Herd Paths и добавьте папку, где будут храниться ваши проекты (например, C:\Users\YourUser\Code). Herd автоматически создаст для каждого подкаталога в этой папке красивый домен вида имя-папки.test.
⚠️ Важно! При установке: - Разрешите доступ в сеть (если запросит брандмауэр) - Проверьте путь в PATH:
C:\Program Files\Herd\bin
Проверка работы:
- Щелкните по иконке Herd в системном трее.
- Убедитесь, что сервисы Nginx и PHP активны (зеленые индикаторы).
- Создайте в вашей папке для проектов (например, C:\Users\YourUser\Code) папку test, а внутри файл index.php с содержимым
<?php phpinfo(); ?>
. - В Herd через вкладку sites укажите путь к папке test и нажмите "Add site".
- Откройте в браузере адрес http://test.test . Вы должны увидеть страницу с информацией о PHP.
3. Альтернативные способы (кратко)
Инструмент | Для кого | Плюсы | Минусы |
---|---|---|---|
Laravel Sail (Docker) | Для всех уровней | Полная изоляция, повторяемость окружения, официальная поддержка Laravel | Требует установки Docker, потребляет больше ресурсов |
XAMPP | Начинающие | Всё в одном установщике (All-in-One) | Громоздкость, сложнее управлять версиями ПО, засоряет систему |
Laragon | Windows-разработчики | Быстрый, легко переключать версии, автонастройка хостов | Требует ручной перезагрузки веб-сервера при добавлении нового проекта |
Пример с Docker (Laravel Sail):
4. Установка PHP и Composer
Если не используете Herd:
- PHP:
- Скачайте PHP 8.3 для Windows
- Распакуйте в
C:\PHP
- Добавьте в PATH:
- Composer:
- Запустите Composer-Setup.exe
- Проверка:
5. Установка PostgreSQL
Для работы с базами данных:
- Скачайте PostgreSQL 15
- Запустите установщик:
- Пароль для суперпользователя:
admin
(или свой) - Порт:
5432
(стандартный) - После установки:
- Откройте pgAdmin 4 (графический клиент)
Вы можете использовать любой другой клиент для работы с базой данных, например, DBeaver, DataGrip или даже командную строку. Я предпочитаю DBeaver - но это дело вкуса
- Создайте базу для проекта:
space_api
6. Установка Laravel
-
Через Composer:
-
Инициализация Git (опционально):
-
Запуск и проверка сервера:
Если вы используете Herd: Убедитесь, что ваш проект space-api находится в папке, которую вы добавили в Herd. Откройте в браузере адрес: http://space-api.test Вы должны увидеть стартовую страницу Laravel. Сервер уже работает благодаря Herd!
Если вы НЕ используете Herd (ручная установка):
Откройте в браузере: 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)
Квиз для закрепления
🚀 Итог главы
Вы развернули "стартовую площадку" для космического API! Теперь у вас есть:
- 🛠️ Локальное окружение (Herd или ручная установка) с PHP и Nginx
- 🐘 Установленный сервер баз данных PostgreSQL
- 🚀 Laravel-проект
space-api
- 🔌 Настроенное подключение к базе данных
📌 Проверка:
- Если вы с Herd: Убедитесь, что по адресу
http://space-api.test
открывается сайт.- Если без Herd: Убедитесь, что команда
php artisan serve
работает и сайт открывается по адресуhttp://localhost:8000
.- В любом случае, проверьте, что в
pgAdmin 4
видна созданная базаspace_api
.