Bu rehberde, önceden LAMP kurulmuş Ubuntu 20.04 üzerinde Laravel Framework kurulumunu ele alacağız. Benzer şekilde, bir sunucuda birden fazla site eklemek de mümkündür. Bu kılavuz, örneğin siteleri sanal hostingten VPS sunucusuna taşımak için de geçerlidir.
Tüm ayarları root kullanıcısından yapıyoruz; eğer normal bir kullanıcı kullanıyorsanız, komutların başına sudo ekleyin.
1. Gerekli php modüllerini yükleyip en son Laravel sürümünü indirelim
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
(Sürümü kontrol edelim; bizim örneğimizde Laravel Framework 8.83.19 kurulumu yapılmış)
2. Veritabanı Oluşturalım
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. Web Hizmetini Yapılandırma
Yetkileri atayıp alan adımız için yapılandırma dosyasını oluşturalım:
chown -R www-data:www-data /var/www/laravelapp
chmod -R 775 /var/www/laravelapp/storage
Yeni bir dosya oluşturalım:
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'yi DNS düzenleyicisinde VPS sunucunuzun IP adresine ayarlanmış olan alan adıyla değiştirin. Bu şekilde benzer bir yöntemle birden fazla site ekleyebilirsiniz. Alan adınıza tarayıcı üzerinden http://domain.tld/ adresine gidin.
Kurulum tamamlandı.