Рассмотрим установку Laravel Framework на Ubuntu 20.04 с предустановленным LAMP. Аналогично можно добавить несколько сайтов на один сервер. Руководство будет также актуально для переноса сайтов например с виртуального хостинга на VPS сервер.
Все настройки мы производим от пользователя root, если вы используете обычного пользователя, перед командой добавляйте sudo.
1. Установим необходимые php модули и скачаем последнюю версию Laravel
apt update && sudo apt upgrade
apt install php php-common libapache2-mod-php php-cli php-fpm php-mysql php-json php-opcache php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-xml php-zip
apt install curl
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer
cd /var/www/
composer create-project laravel/laravel laravelapp
cd laravelapp
php artisan
(Проверим версию, в нашем случае Laravel Framework 8.83.19 т.е установка выполнена)
2. Создадим базу данных
mariadb -u root
CREATE DATABASE laravel_db;
CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL ON laravel_db.* TO 'laravel_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
3. Настройка веб службы
Назначим права и создадим файл конфигурации нашего домена:
chown -R www-data:www-data /var/www/laravelapp
chmod -R 775 /var/www/laravelapp/storage
Создадим новый файл:
nano /etc/apache2/sites-available/laravel.conf
ServerName domain.tld
ServerAdmin admin@domain.tld
DocumentRoot /var/www/laravelapp/public
AllowOverride All
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
apache2ctl configtest a2ensite laravel.conf systemctl reload apache2
Измените domain.tld на Ваш, уже настроенный в DNS редакторе на ip адрес VPS сервера. Таким образом Вы можете по аналогии добавить несколько сайтов. Перейдите в браузер по настроенному домену http://domain.tld/.
Установка завершена.