Как установить Laravel PHP Framework на Alma Linux 9
На этой странице
- Предварительные условия
- Установка LAMP Stack и Composer
- Настройка МариаБД
- Создание проекта Laravel
- Настройка виртуального хоста Httpd
- Настройка брандмауэра
- Доступ к Laravel с локального компьютера
- Заключение
Laravel — это платформа веб-приложений, основанная на PHP, которая используется для создания корпоративных и надежных полнофункциональных веб-приложений. Он следует архитектуре модель-представление-контроллер (MVC) и основан на Symfony. Laravel поддерживает несколько баз данных, включая MySQL, PostgreSQL, SQLite и SQL Server. Laravel также предоставляет основу для безопасной аутентификации.
Из этого туториала вы узнаете, как установить Laravel на сервер Alma Linux 9. Мы покажем вам установку Laravel с помощью LAMP Stack (Linux, Apache/Httpd, MariaDB и PHP) и Composer.
Предварительные условия
Прежде чем двигаться дальше, убедитесь, что у вас есть следующее:
- Сервер Alma Linux 9.
- Пользователь без полномочий root с правами администратора.
- Локальное доменное имя.
- SELinux с разрешительным режимом.
Установка LAMP Stack и Composer
Laravel — один из самых популярных веб-фреймворков PHP для создания веб-приложений. Чтобы установить Laravel, вам необходимо установить зависимости, включая стек LAMP (Apache/Httpd, MariaDb и PHP) и Composer. В настоящее время для Laravel требуется PHP 8.3. Вам необходимо установить PHP 8.3 через сторонний репозиторий.
Сначала добавьте сторонний репозиторий EPEL и Remi на свой сервер Alma Linux, используя команду ниже. Репозиторий EPEL будет использоваться для установки таких пакетов, как Composer, а репозиторий Remi предоставляет несколько версий PHP для Laravel.
sudo dnf install epel-release dnf-utils http://rpms.remirepo.net/enterprise/remi-release-9.rpm
Теперь включите репозиторий PHP 8.3 через Remi, используя команду ниже.
sudo dnf reset php -y
sudo dnf module enable php:remi-8.3 -y
Затем установите пакеты LAMP Stack (Apache/Httpd, MariaDB и PHP) и Composer с помощью следующей команды. Введите y для подтверждения установки.
sudo dnf install httpd mariadb-server composer php php-curl php-bcmath php-json php-mbstring php-xml php-tokenizer php-zip
После завершения установки запустите и включите службу httpd с помощью команды ниже.
sudo systemctl start httpd
sudo systemctl enable httpd
Затем запустите и включите сервер MariaDB с помощью следующей команды.
sudo systemctl start mariadb
sudo systemctl enable mariadb
Теперь проверьте версии PHP и Composer, используя команду ниже. Вы должны увидеть, что установлены PHP 8.3 и Composer 2.7.1.
php -v
sudo -u apache composer -v
Наконец, запустите команду ниже, чтобы проверить ваши модули PHP. Убедитесь, что fileinfo, mbstring и openssl включены.
php -m
Настройка МариаБД
Настроив PHP, вы защитите сервер MariaDB и создадите новую базу данных и пользователя для Laravel. Сервер MariaDB предоставляет утилиту безопасной установки MariaDB для защиты сервера MariaDB и клиента MariaDB для подключения к серверу MariaDB через командную строку.
Чтобы защитить сервер MariaDB, выполните приведенную ниже команду, и вам будет предложено указать некоторые конфигурации сервера MariaDB. Введите Y или N, чтобы согласиться или не согласиться с применением новых изменений MariaDB.
sudo mariadb-secure-installation
Ниже приведены некоторые конфигурации сервера MariaDB, которые вам потребуются:
- Переключиться на аутентификацию unix_socket?. Введите n и нажмите ENTER. Пользователь root MariaDB по умолчанию уже защищен. при желании вы также можете включить его, набрав y вместо «да».
- Изменить пароль root?. Введите y, чтобы подтвердить и настроить новый корневой пароль MariaDB.
- Удалить анонимного пользователя?. Введите y для подтверждения.
- Запретить удаленный вход в систему root? Введите y для подтверждения. Если вы используете root-пользователя MariaDB, будет разрешено только локальное подключение.
- Удалить тестовую базу данных и получить к ней доступ? Введите y, чтобы подтвердить и удалить «тест» базы данных по умолчанию.
- Наконец, введите y еще раз, чтобы перезагрузить все права доступа к таблицам на вашем сервере MariaDB и применить новые изменения.
После того, как MariaDB будет защищена, вы создадите новую базу данных и пользователя для Laravel через клиент mariadb.
Войдите на сервер MariaDB с помощью команды клиента mariadb, приведенной ниже. При появлении запроса введите свой корневой пароль MariaDB.
sudo mariadb -u root -p
Теперь выполните следующие запросы, чтобы создать новую базу данных и пользователя для Laravel. В этом примере вы создадите новую базу данных laravelapp, пользователя laravel с паролем p4ssw0rd. Настройте базу данных подробностей и пользователя ниже, указав свою информацию.
CREATE DATABASE laravelapp;
CREATE USER laravel@localhost IDENTIFIED BY 'p4ssw0rd';
GRANT ALL PRIVILEGES ON laravelapp.* TO laravel@localhost;
FLUSH PRIVILEGES;
Затем выполните приведенный ниже запрос, чтобы проверить привилегии пользователя laravel. Убедитесь, что пользователь laravel имеет доступ к базе данных laravelapp.
SHOW PRIVILEGES FOR laravel@localhost;
Наконец, введите quit, чтобы выйти с сервера MariaDB.
Создание проекта Laravel
Итак, теперь вы настроили PHP и MariaDB, давайте загрузим и установим Laravel в вашу систему. Вы создадите и настроите каталог проекта, затем загрузите и установите проект Laravel через Composer.
Создайте новые каталоги для проекта Laravel /var/www/laravelapp и дополнительные каталоги .cache и .config для хранения кеша и конфигурации Composer. Затем измените владельца этих каталогов на пользователя Apache.
mkdir -p /var/www/laravelapp /usr/share/httpd/.composer/{.cache,.config}
sudo chown -R apache:apache /var/www/laravelapp /usr/share/httpd/.composer
Перейдите в каталог /var/www/laravelapp и запустите команду композитора ниже, чтобы загрузить и установить Laravel.
cd /var/www/laravelapp/
sudo -u apache composer create-project laravel/laravel .
Процесс загрузки должен быть таким:
После загрузки Laravel откройте файл .env с помощью следующей команды редактора nano.
nano .env
Измените APP_URL на имя вашего локального домена, затем измените данные базы данных на информацию о вашей базе данных MariaDB.
APP_URL=http://dev.hwdomain.local
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravelapp
DB_USERNAME=laravel
DB_PASSWORD=password
По завершении сохраните файл и выйдите.
Теперь выполните команду ниже, чтобы перенести базу данных и заполнить таблицы новыми образцами данных.
sudo -u apache php artisan migrate
sudo -u apache php artisan db:seed
Настройка виртуального хоста Httpd
После установки Laravel вы создадите новую конфигурацию виртуального хоста Httpd, которую будет использовать Laravel. Для этого убедитесь, что у вас есть локальное доменное имя или любой/случайный домен по вашему желанию. Вы можете настроить этот домен позже.
Создайте новую конфигурацию виртуального хоста httpd /etc/httpd/conf.d/laravel.conf, используя следующую команду редактора nano.
sudo nano /etc/httpd/conf.d/laravel.conf
Вставьте следующую конфигурацию и обязательно замените параметр ServerName своим доменным именем Laravel.
<VirtualHost *:80>
ServerAdmin [email
ServerName dev.hwdomain.local
DocumentRoot /var/www/laravelapp/public
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/laravelapp>
AllowOverride All
</Directory>
ErrorLog /var/log/httpd/laravel-error.log
CustomLog /var/log/httpd/laravel-access.log combined
</VirtualHost>
Сохраните файл и выйдите из редактора.
Теперь выполните команду ниже, чтобы проверить конфигурацию httpd. Если у вас правильный синтаксис httpd, вы должны получить выходной синтаксис OK.
sudo apachectl configtest
Наконец, перезапустите службу httpd, чтобы применить новую конфигурацию виртуального хоста для Laravel.
sudo systemctl restart httpd
Настройка брандмауэра
Прежде чем получить доступ к вашей установке Laravel, вы должны открыть порты HTTP и HTTPS в своей системе, что можно сделать через Firewalld.
Откройте трафик HTTP и HTTPS на ваш сервер Alma Linux с помощью команды ниже.
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --add-service=https --permanent
Теперь перезагрузите firewalld, чтобы применить изменения.
sudo firewall-cmd --reload
Наконец, проверьте правила списка firewalld, используя следующую команду. Вы увидите, что в firewalld добавлены службы HTTP и HTTPS.
sudo firewall-cmd --list-all
Доступ к Laravel с локального компьютера
Чтобы настроить локальное доменное имя для вашей установки Laravel, используйте следующее:
- Для пользователей Windows измените файл C:\Windows\System32\drivers\etc\hosts от имени администратора.
- Для пользователей Linux и Mac откройте файл /etc/hosts с правами root.
Вставьте конфигурацию ниже и обязательно измените IP-адрес и доменное имя с вашей информацией.
192.168.5.60 dev.hwdomain.local
Сохраните и выйдите из файла.
Теперь откройте веб-браузер и посетите вашу установку Laravel http://dev.hwdomain.local/. Если ваша установка прошла успешно, вы должны получить следующую индексную страницу Laravel.
Заключение
Поздравляем! Вы завершили установку Laravel на Alma Linux 9 со стеком LAMP (Linux, Apache/Httpd, MariaDB и PHP) и Composer. Вы также настроили firewalld для открытия портов HTTP и HTTPS, а затем настроили локальное доменное имя для вашей разработки Laravel через файл /etc/hosts или файл C:\Windows\System32\drivers\etc\hosts.