Laravel — это бесплатный PHP-фреймворк веб-приложений с открытым исходным кодом, используемый для веб-разработки. Он следует архитектурному шаблону Model-View-Controller (MVC) и предоставляет элегантный синтаксис и инструменты для таких задач, как маршрутизация, шаблонизация, аутентификация и многое другое. Laravel стремится сделать задачи веб-разработки более приятными и эффективными, предоставляя чистый и выразительный синтаксис, а также набор соглашений и инструментов для общих задач.
Laravel приобрел популярность в сообществе разработчиков PHP благодаря своему элегантному синтаксису, удобным для разработчиков функциям и активному сообществу. Он широко используется для создания веб-приложений, API и различных других веб-проектов.
В этом руководстве мы покажем вам, как установить Laravel на ОС Debian 12 с веб-сервером Nginx и сервером базы данных MariaDB.
Шаг 1: Обновите операционную систему
Первый шаг — убедиться, что ваша система обновлена. Это можно сделать, выполнив следующую команду:
# apt update && apt upgrade
Также установите необходимые пакеты.
# apt install sudo nano wget unzip zip
Шаг 2: Установка веб-сервера Nginx
Чтобы установить веб-сервер Nginx, выполните следующую команду:
# apt install nginx
Вы можете запустить службу Nginx и настроить ее на запуск при загрузке, введя следующие команды:
# systemctl start nginx
# systemctl enable nginx
Проверьте статус службы Nginx с помощью статус systemctl команда:
# systemctl status nginx
Шаг 3: Установка PHP и расширений PHP
Чтобы установить PHP и дополнительные модули PHP для поддержки Laravel, выполните следующую команду:
# apt install php php-cli php-common php-json php-gmp php-fpm php-xmlrpc php-bcmath php-imagick php-curl php-zip php-gd php-mysql php-xml php-mbstring php-xmlrpc php-intl
Проверьте, установлен ли PHP.
# php -v
Output:
PHP 8.2.7 (cli) (built: Jun 9 2023 19:37:27) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.7, Copyright (c) Zend Technologies
with Zend OPcache v8.2.7, Copyright (c), by Zend Technologies
После установки всех пакетов отредактируйте файл php.ini:
# nano /etc/php/8.2/fpm/php.ini
Измените следующие настройки в соответствии с вашими требованиями:
max_execution_time = 300
memory_limit = 512M
post_max_size = 128M
upload_max_filesize = 128M
date.timezone = America/Chicago
Чтобы применить изменения, перезапустите php-fpm
услуга:
# systemctl restart php8.2-fpm
Шаг 4: Установите MariaDB и создайте базу данных
Установить MariaDB можно с помощью следующей команды:
# apt install mariadb-server mariadb-client
Запустите демон сервера базы данных, а также включите его автоматический запуск при следующей загрузке с помощью следующих команд:
# systemctl start mariadb
# systemctl enable mariadb
После установки сервера базы данных войдите в командную строку MariaDB:
# mysql -u root
Чтобы создать базу данных, пользователя базы данных и предоставить все привилегии пользователю базы данных, выполните следующие команды:
MariaDB [(none)]> CREATE DATABASE laravel_db;
MariaDB [(none)]> CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'Str0ngPa$word';
MariaDB [(none)]> GRANT ALL ON laravel_db.* TO 'laravel_user'@'localhost';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT
Шаг 5: Установка менеджера зависимостей Composer
Чтобы установить Composer, выполните следующие команды:
# curl -sS https://getcomposer.org/installer | php
# mv composer.phar /usr/local/bin/composer
Убедитесь, что Composer успешно установлен, выполнив следующую команду:
# composer --version
Composer version 2.5.8 2023-06-09 17:13:21
Шаг 6: Установка Laravel
Перейдите к webroot
каталог, введите:
# cd /var/www/html
Теперь установите Laravel с помощью команды composer, введите:
# composer create-project laravel/laravel laravelapp
Команда создает новый каталог с именем laravelapp
и устанавливает все файлы и каталоги для Laravel.
Измените владельца каталога Laravel на пользователя веб-сервера, а также разрешения:
# chown -R www-data:www-data /var/www/html/laravelapp
# chmod -R 775 /var/www/html/laravelapp/storage
После завершения установки перейдите в каталог установки и проверьте версию Laravel:
# cd laravelapp
# php artisan
Шаг 7: Настройка веб-сервера Nginx для Laravel
Перейдите к /etc/nginx/conf.d
каталог и выполните следующую команду для создания файла конфигурации:
# nano /etc/nginx/conf.d/laravel.conf
Добавьте следующий контент:
server {
listen 80;
listen [::]:80;
server_name your-domain.com;
root /var/www/html/laravelapp/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
index index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
Сохраните файл и выйдите.
Проверьте синтаксис Nginx:
# /usr/sbin/nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Чтобы изменения вступили в силу, перезапустите веб-сервер Nginx:
# systemctl restart nginx
Шаг 8: Получите доступ к своему приложению Laravel
Откройте браузер и введите свой домен, например http://your-domain.com