Как установить Laravel с Nginx на CentOS 8
В этом руководстве мы покажем вам, как установить Laravel с nginx на CentOS 8. Для тех из вас, кто не знал, Laravel — это бесплатная инфраструктура веб-приложений PHP с открытым исходным кодом, созданная Тейлором Отвеллом и предназначенная для разработки веб-приложения, следующие архитектурному шаблону контроллера представления модели (MVC). Это довольно новый фреймворк, но с большим потенциалом стать одним из самых популярных фреймворков PHP.
В этой статье предполагается, что у вас есть хотя бы базовые знания о Linux, вы знаете, как использовать оболочку, и, что наиболее важно, вы размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить sudo к командам для получения привилегий root. Я покажу вам пошаговую установку Laravel PHP Framework с nginx на сервере CentOS 8.
Установите Laravel с Nginx на CentOS 8
Шаг 1. Сначала давайте начнем с проверки актуальности вашей системы.
sudo dnf update
Шаг 2. Установите сервер стека LEMP.
Требуется стековый сервер CentOS 8 LEMP. Если у вас не установлен LEMP, вы можете следовать нашему руководству здесь .
Шаг 3. Установка Composer.
Компоновщик необходим для установки зависимостей Laravel. Поэтому используйте следующие команды для загрузки и использования в качестве команды в нашей системе:
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer sudo chmod +x /usr/local/bin/composer
Подтвердите установку Composer, используя следующую команду:
composer
Шаг 3. Установка Laravel на CentOS 8.
Установите Laravel, используя следующую команду:
cd /var/www/ composer create-project --prefer-dist laravel/laravel laravel
Нам нужно будет изменить права доступа к некоторым папкам:
sudo chown -R www-data:www-data /var/www/laravel/ sudo chmod -R 755 /var/www/laravel/
Шаг 4. Настройка MariaDB для Laravel.
По умолчанию MariaDB не усилен. Вы можете защитить MariaDB с помощью скрипта mysql_secure_installation. Вы должны внимательно прочитать ниже каждый шаг, который установит пароль root, удалит анонимных пользователей, запретит удаленный вход root, а также удалит тестовую базу данных и доступ к безопасности MariaDB.
mysql_secure_installation
Настройте это так:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Затем нам нужно будет войти в консоль MariaDB и создать базу данных для Laravel. Выполните следующую команду:
mysql -u root -p
Вам будет предложено ввести пароль, поэтому введите пароль root для MariaDB и нажмите Enter. После входа на сервер базы данных вам необходимо создать базу данных для установки Laravel:
mysql> CREATE DATABASE laravel; mysql> GRANT ALL ON laravel.* to 'laravel'@'localhost' IDENTIFIED BY 'your_strong_password'; mysql> FLUSH PRIVILEGES; mysql> quit
Теперь откройте файл .env и внесите изменения, как показано ниже:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=laravel DB_PASSWORD=your_strong_password
Шаг 5. Настройте Nginx для Laravel.
Сначала создайте корневой каталог для вашего проекта Laravel, набрав следующую команду:
mkdir -p /var/www/laravel
Теперь перейдите в каталог конфигурации Nginx и создайте файл your-domain.com.conf для конфигурации вашего проекта:
cd /etc/nginx/ nano sites-available/laravel.conf
Добавьте следующие строки:
server { listen 80; listen [::]:80 ipv6only=on; # Log files for Debugging access_log /var/log/nginx/laravel-access.log; error_log /var/log/nginx/laravel-error.log; # Webroot Directory for Laravel project root /var/www/example.com/public; index index.php index.html index.htm; # Your Domain Name server_name example.com; location / { try_files $uri $uri/ /index.php?$query_string; } # PHP-FPM Configuration Nginx location ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/run/php/php7.2-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
Сохраните и закройте файл. Перезапустите службу Nginx, чтобы изменения вступили в силу:
ln -s /etc/nginx/sites-available/laravel /etc/nginx/sites-enabled/ systemctl restart nginx
Шаг 6. Настройка межсетевого экрана для Laravel.
Создайте правило брандмауэра, чтобы разрешить доступ с внешних машин к Laravel:
firewall-cmd --permanent --zone=public --add-service=http firewall-cmd --permanent --zone=public --add-service=https firewall-cmd --reload
Шаг 7. Доступ к Laravel.
По умолчанию Laravel PHP Framework будет доступен через HTTP-порт 80. Откройте свой любимый браузер, перейдите по адресу http://your_domain.com или http: // server-ip-address и выполните необходимые шаги для завершения установки.
Поздравления! Вы успешно установили Laravel . Благодарим за использование этого руководства по установке Laravel PHP Framework в вашей системе CentOS 8. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт Laravel .