🔴 Laravel Kurulumu
Laravel 11 Kurulumu: Nginx, PHP 8.3 ve Composer ile VPS
Ubuntu VPS üzerinde Laravel 11 kurulumu rehberi. Nginx, PHP 8.3-FPM, Composer ve MySQL yapılandırması ile queue worker kurulumu.
📅 7 Mart 2025
👁 35 görüntülenme
⏱ 3 dk okuma
📋 İçindekiler
göster/gizle
Laravel 11 Hakkında
Laravel, PHP ekosisteminin en popüler ve en kapsamlı web uygulama çerçevesidir. Taylor Otwell tarafından 2011'de başlatılan bu açık kaynak proje, MVC (Model-View-Controller) mimarisini temel alır ve geliştirici deneyimini ön planda tutar. Laravel 11, Şubat 2024'te yayınlanmış olup PHP 8.2 ve 8.3 sürümlerini destekler. Bu sürümle birlikte uygulama yapısı sadeleştirilmiş (slim skeleton), Reverb WebSocket sunucusu eklenmiş ve Volt bileşenleri geliştirilmiştir.
Gereksinimler
- PHP >= 8.2 (önerilen 8.3)
- Composer 2.x
- MySQL 8.0 / MariaDB 10.11 / PostgreSQL 15+
- Nginx veya Apache
- Node.js (frontend build için)
Adım 1: PHP 8.3 ve Gerekli Uzantılar
apt update
add-apt-repository ppa:ondrej/php -y
apt install -y php8.3-fpm php8.3-cli php8.3-mysql php8.3-curl \
php8.3-xml php8.3-zip php8.3-mbstring php8.3-bcmath \
php8.3-intl php8.3-gd php8.3-redis php8.3-imagick
php -v
systemctl status php8.3-fpm
Adım 2: Nginx Kurulumu
apt install -y nginx
systemctl enable --now nginx
Adım 3: MySQL/MariaDB ve Veritabanı
apt install -y mariadb-server
mariadb-secure-installation
mariadb -u root -p -e "
CREATE DATABASE laravel_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'laravel'@'localhost' IDENTIFIED BY 'LaravelSifre123!';
GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel'@'localhost';
FLUSH PRIVILEGES;"
Adım 4: Composer Kurulumu
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
chmod +x /usr/local/bin/composer
composer --version
Adım 5: Laravel Projesi Oluşturma
cd /var/www
composer create-project laravel/laravel myapp "11.*"
chown -R www-data:www-data /var/www/myapp
chmod -R 755 /var/www/myapp
chmod -R 775 /var/www/myapp/storage /var/www/myapp/bootstrap/cache
.env Yapılandırması
cd /var/www/myapp
cp .env.example .env
php artisan key:generate
# .env dosyasını düzenle
nano .env
APP_NAME="Uygulamam"
APP_ENV=production
APP_KEY=base64:... # key:generate ile otomatik oluşturulur
APP_DEBUG=false
APP_URL=https://example.com
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=laravel
DB_PASSWORD=LaravelSifre123!
Migrasyonları Çalıştır
php artisan migrate
php artisan storage:link
Adım 6: Nginx Server Block
# /etc/nginx/sites-available/myapp
server {
listen 80;
server_name example.com www.example.com;
root /var/www/myapp/public;
index index.php;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
location / {
try_files $uri $uri/ /index.php?$query_string;
}
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;
}
}
ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
Adım 7: Queue Worker (Supervisor)
apt install -y supervisor
cat > /etc/supervisor/conf.d/laravel-worker.conf << 'EOF'
[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/myapp/artisan queue:work --sleep=3 --tries=3 --max-time=3600
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
user=www-data
numprocs=2
redirect_stderr=true
stdout_logfile=/var/www/myapp/storage/logs/worker.log
EOF
supervisorctl reread
supervisorctl update
supervisorctl status
Sık Karşılaşılan Sorunlar
- 500 Server Error:
storage/logs/laravel.logdosyasını inceleyin; en sık neden eksikAPP_KEYveya hatalı veritabanı bilgileridir. - İzin hatası:
chown -R www-data:www-data /var/www/myappkomutunu tekrarlayın. - Composer bellek hatası:
COMPOSER_MEMORY_LIMIT=-1 composer installkullanın. - Önbellek sorunu:
php artisan config:clear && php artisan cache:clearçalıştırın.
İlgili Makaleler
- PHP 8.3 Kurulumu: Ubuntu, AlmaLinux ve cPanel'de PHP Yönetimi
- PHP-FPM Nasıl Kurulur ve Yapılandırılır? Nginx ile Entegrasyon Rehberi
- Nginx Nasıl Kurulur? Ubuntu 22.04 ve AlmaLinux Adım Adım Rehber
- Redis Kurulumu ve Yapılandırması: Ubuntu ve AlmaLinux Rehberi
- AlmaLinux Üzerinde Node.js LTS ve PM2 ile Uygulama Yayını
Yorumlar
Henüz yorum yok. İlk yorumu siz yapın!