Laravel является одним из самых популярных PHP-фреймворков для разработки современных веб-приложений. Благодаря удобной архитектуре, встроенным инструментам безопасности и большому количеству готовых компонентов Laravel используется как для небольших сайтов, так и для крупных корпоративных проектов. После завершения разработки возникает задача развертывания приложения на хостинге. Процесс установки Laravel зависит от типа хостинга, однако основные этапы остаются одинаковыми: подготовка сервера, загрузка файлов проекта, установка зависимостей через Composer, настройка базы данных и конфигурации приложения.

Требования Laravel к хостингу

Перед установкой необходимо убедиться, что сервер соответствует требованиям выбранной версии Laravel. Обычно требуются:
  • PHP 8.1 или новее;
  • MySQL или MariaDB;
  • Composer;
  • OpenSSL;
  • Mbstring;
  • Tokenizer;
  • XML;
  • PDO;
  • Ctype;
  • Fileinfo.
Большинство современных VPS и качественных хостингов поддерживают необходимые компоненты.

Подготовка проекта Laravel

Перед загрузкой на сервер рекомендуется проверить работоспособность проекта локально. Также желательно выполнить очистку временных файлов:
php artisan cache:clear php artisan config:clear php artisan route:clear php artisan view:clear
Это позволит избежать проблем после переноса.

Загрузка файлов на хостинг

Файлы Laravel можно загрузить несколькими способами:
  • через Git;
  • через FTP;
  • через SSH;
  • с помощью панели управления хостингом.
На VPS чаще всего используется Git или SCP, а на виртуальном хостинге — FTP.

Установка зависимостей Composer

После загрузки проекта необходимо установить зависимости.
composer install --no-dev --optimize-autoloader
Команда загрузит все необходимые библиотеки и подготовит приложение для рабочего режима.

Настройка файла .env

Laravel хранит параметры подключения и конфигурацию в файле .env. Необходимо указать данные базы данных:
DB_CONNECTION=mysql DB_HOST=localhost DB_PORT=3306 DB_DATABASE=database_name DB_USERNAME=db_user DB_PASSWORD=strong_password
Также рекомендуется настроить параметры почты и другие необходимые сервисы.

Генерация ключа приложения

Если проект устанавливается впервые, необходимо создать уникальный ключ безопасности:
php artisan key:generate
После выполнения команда автоматически обновит параметр APP_KEY в файле .env.

Создание базы данных

Перед запуском приложения необходимо создать базу данных MySQL. Это можно сделать через phpMyAdmin или командную строку:
CREATE DATABASE laravel_db;
После создания необходимо выдать права пользователю MySQL.

Выполнение миграций

Для создания структуры таблиц используется система миграций Laravel.
php artisan migrate
Команда автоматически создаст необходимые таблицы в базе данных.

Настройка прав доступа

Laravel требует права на запись в некоторые директории. Для Linux-серверов обычно используются команды:
chmod -R 775 storage chmod -R 775 bootstrap/cache
Без правильных разрешений приложение может работать некорректно.

Настройка точки входа сайта

Основной публичный каталог Laravel находится в директории public. Именно она должна быть назначена корневой директорией домена. Если хостинг позволяет указать Document Root, необходимо выбрать папку:
/public

Настройка виртуального хоста Apache

Для Apache конфигурация может выглядеть следующим образом:
<VirtualHost *:80> ServerName site.ru DocumentRoot /var/www/project/public <Directory /var/www/project/public> AllowOverride All Require all granted </Directory> </VirtualHost>
После изменения конфигурации необходимо перезапустить веб-сервер.

Настройка Nginx

Для Nginx используется следующая конфигурация:
server { listen 80; server_name site.ru; root /var/www/project/public; index index.php; location / { try_files $uri $uri/ /index.php?$query_string; } location ~ \.php$ { fastcgi_pass unix:/run/php/php-fpm.sock; include fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Конфигурация может отличаться в зависимости от версии PHP и сервера.

Кэширование конфигурации

После завершения настройки рекомендуется включить оптимизацию:
php artisan config:cache php artisan route:cache php artisan view:cache
Это повысит производительность приложения.

Настройка Cron для Laravel

Для выполнения планировщика задач необходимо добавить Cron-запись:
* * * * * php /home/user/project/artisan schedule:run >> /dev/null 2>&1
После этого Laravel сможет выполнять запланированные задания автоматически.

Распространенные ошибки установки

Во время развертывания Laravel чаще всего возникают следующие проблемы:
  • ошибка 500 Internal Server Error;
  • неверные права доступа;
  • отсутствие расширений PHP;
  • неправильный APP_KEY;
  • ошибки подключения к базе данных;
  • неверно указан Document Root.
Большинство подобных ошибок можно быстро устранить после проверки логов приложения.

Проверка логов Laravel

Все ошибки записываются в каталог:
storage/logs
Анализ файлов журнала помогает быстро найти причину сбоя и восстановить работу проекта.

Заключение

Установка Laravel на хостинг включает подготовку сервера, загрузку проекта, установку зависимостей через Composer, настройку файла .env, подключение базы данных и настройку веб-сервера. При соблюдении всех этапов Laravel стабильно работает как на VPS, так и на современных виртуальных хостингах. Грамотная настройка прав доступа, кэширования и планировщика задач позволяет получить производительное и надежное веб-приложение для дальнейшего развития проекта.