Установка PHP-фреймворка Laravel с Nginx в Ubuntu обеспечивает надежную и эффективную среду для безопасной разработки и развертывания веб-приложений. Ubuntu, популярный и хорошо поддерживаемый дистрибутив Linux, гарантирует, что у вас есть все необходимые инструменты и пакеты для веб-разработки.
В сочетании с Laravel и Nginx вы создаете мощный стек для создания и размещения современных веб-приложений, поддерживаемый сильным и надежным сообществом.
Приведенные ниже шаги помогут вам установить PHP-фреймворк Laravel с Nginx в Ubuntu 24.04.
Установите HTTP-сервер Nginx в Ubuntu
Laravel требует веб-сервер. В этом посте будет установлен и использован веб-сервер Nginx для запуска Laravel.
Для этого откройте терминал Ubuntu и выполните приведенные ниже команды, чтобы установить веб-сервер Nginx.
sudo apt update sudo apt install nginx
После установки Nginx приведенные ниже команды могут запускать, останавливать и включать автоматический запуск веб-сервера Nginx при загрузке вашего сервера.
sudo systemctl stop nginx sudo systemctl start nginx sudo systemctl enable nginx
Вы можете протестировать веб-сервер Nginx, открыв веб-браузер и перейдя по локальному хосту или IP-адресу сервера.
Когда вы увидите сообщение «Добро пожаловать в nginx!», это означает, что HTTP-сервер Nginx успешно установлен.
Установите сервер базы данных MariaDB в Ubuntu
Следующий компонент, необходимый для запуска Laravel, — это сервер базы данных. В этом посте будет установлен и использован сервер базы данных MariaDB.
Чтобы установить и использовать сервер базы данных MariaDB, используйте инструкции ниже.
Откройте терминал Ubuntu и выполните приведенные ниже команды, чтобы установить сервер базы данных MariaDB.
sudo apt update sudo apt install mariadb-server
После установки сервера базы данных MariaDB используйте приведенные ниже команды, чтобы остановить, запустить и включить автоматический запуск сервера MariaDB при загрузке сервера.
sudo systemctl stop mariadb sudo systemctl start mariadb sudo systemctl enable mariadb
Выполните следующие команды, чтобы проверить, успешно ли установлен сервер базы данных MariaDB.
sudo mariadb
Как только вы запустите приведенные выше команды, вы войдете в консоль MariaDB и отобразите сообщение, подобное приведенному ниже.
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 32 Server version: 10.11.2-MariaDB-1 Ubuntu 23.04 Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
Сообщение сообщает, что сервер успешно установлен.
Создайте базу данных Laravel
После успешной установки сервера базы данных MariaDB создайте на сервере пустую базу данных специально для приложения Laravel.
В рамках установки мы создадим базу данных laraveldb и учетную запись пользователя с именем laraveldbuser.
Наконец, мы предоставим laraveldbuser полный доступ к базе данных laraveldb.
Все описанные выше шаги с базой данных можно выполнить с помощью следующих команд:
Но сначала войдите на сервер базы данных MariaDB:
sudo mariadb
Затем выполните команды ниже, чтобы выполнить шаги:
CREATE DATABASE laraveldb CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; CREATE USER laraveldbuser@localhost IDENTIFIED BY 'type_your_password_here'; GRANT ALL ON laraveldb.* TO laraveldbuser@localhost WITH GRANT OPTION; FLUSH PRIVILEGES; exit
Обязательно замените «type_your_password_here» своим паролем.
Установите PHP-FPM в Ubuntu Linux
Последний компонент, который вам понадобится для запуска Laravel, — это PHP-FPM. Приложение Laravel основано на PHP и поддерживает последние версии PHP.
Запустите команды ниже, чтобы установить PHP-FPM.
sudo apt install php-fpm php-intl php-mysql php-curl php-cli php-zip php-xml php-gd php-common php-mbstring php-xmlrpc php-json php-sqlite3 php-soap php-ldap php-zip
Установите Laravel через Composer
Давайте начнем загрузку и настройку файлов Laravel в Ubuntu Linux.
Сначала создайте эти каталоги для настройки Laravel.
- /var/www/.cache (кэш Composer)
- /var/www/.config (дополнительная конфигурация Composer),
- /var/www/laravelapp (проект Laravel).
sudo mkdir -p /var/www/{.cache,.config,laravelapp} sudo chown -R www-data:www-data /var/www/{.cache,.config,laravelapp}
Возможно, вы захотите использовать репозиторий GitHub, чтобы получить последнюю версию Laravel. Для начала установите Composer, Curl и другие зависимости.
sudo apt install curl git curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
После установки Curl и Composer, описанных выше, измените каталог на корневой каталог Nginx и загрузите пакеты Larival с Github.
cd /var/www/laravelapp/ sudo -u www-data composer create-project laravel/laravel
После того, как вы выполнили все вышеперечисленные шаги, продолжайте настройку веб-сервера Nginx ниже для обслуживания контента Laravel.
Сначала откройте файл «.env» с помощью редактора nano, используя команду ниже.
sudo -u www-data nano.env
Затем измените значение по умолчанию «APP_URL», чтобы оно соответствовало имени вашего домена. В этом примере Laravel будет работать на домене laravel.example.com.
APP_URL=http://laravel.example.com
Измените значение по умолчанию «DB_CONNECTION» на «mysql», раскомментируйте и измените сведения о базе данных, используя информацию, созданную выше.
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laraveldb DB_USERNAME=laraveldbuser DB_PASSWORD=strong_password_here
Сохраните и выйдите из файла.
Наконец, выполните команду ниже, чтобы перенести базу данных для вашего проекта Laravel.
sudo -u www-data php artisan migrate
Когда вы закончите, выполните команду ниже, чтобы сделать сервер Nginx владельцем файлов Larival в его корневом каталоге.
sudo chown -R www-data:www-data /var/www/{.cache,.config,laravelapp}
Затем выполните приведенные ниже команды, чтобы создать файл блока сервера Nginx для Laravel.
sudo nano /etc/nginx/sites-available/laravel.conf
Затем скопируйте и вставьте блок содержимого ниже в блок сервера Nginx.
server { listen 80; listen [::]:80; server_name laravel.example.com; root /var/www/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.3-fpm.sock; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; include fastcgi_params; } location ~ /\.(?!well-known).* { deny all; } }
Сохраните файл.
Затем выполните приведенные ниже команды, чтобы включить виртуальный хост и перезапустить сервер Nginx.
sudo ln -s /etc/nginx/sites-available/laravel.conf /etc/nginx/sites-enabled/ sudo systemctl restart nginx.service
Настройка Let’s Encrypt SSL/TLS для Laravel
Возможно, вы захотите установить сертификат SSL/TLS для защиты своего сайта Laravel. Защитите свою установку Laravel с помощью HTTPS от Let’s Encrypt.
После перезапуска веб-сервера Nginx откройте браузер и перейдите к имени хоста или IP-адресу сервера, определенному в блоке сервера Nginx.
http://laravel.example.com
Ваш сайт Laravel должен быть настроен и готов к использованию.
Это должно сработать!
Заключение:
- Установка PHP-фреймворка Laravel с Nginx в Ubuntu 24.04 обеспечивает надежную и эффективную среду для разработки и развертывания веб-приложений.
- Сочетание Laravel, Nginx и Ubuntu создает мощный стек для размещения современных веб-приложений, поддерживаемый сильным и надежным сообществом.
- Выполнение описанных шагов обеспечит успешную установку и настройку Nginx, MariaDB, PHP-FPM и Laravel, а также дополнительные инструкции по настройке Let’s Encrypt SSL/TLS для повышения безопасности.
- Используя это подробное руководство, можно уверенно настроить безопасную и надежную среду для разработки и размещения приложений Laravel.