Son doğrulama: Eylül 2026 · cPanel 136 test hesabında Softaculous ve menü yolları denendi, Laravel adımları laravel.com resmî dokümanına göre
Hızlı çözüm
cPanelde Laravel kurulumu iki yolla yapılır: hazır bir iskelet yeterliyse Softaculous’tan tek formla, kendi projenizi yayına alacaksanız projeyi bilgisayarınızda Composer ile hazırlayıp yükleyerek. Paylaşımlı hostingde SSH olmadığı için Artisan komutlarını yerelde çalıştırırsınız.
composer install --no-dev ile hazırlayıp ZIP olarak yükleyin.public klasörüne bağlayın..env dosyasında veritabanı bilgilerini ve APP_DEBUG=false ayarını girin.| Panel | cPanel |
|---|---|
| Sistem | Paylaşımlı hosting (PHP 8.3/8.4, MariaDB 10.11) |
| Yetki | cPanel kullanıcısı |
| Narhost ürünü | Web Hosting |
Başlamadan önce
Laravel isteklerin tamamını public/index.php dosyasından karşılar. Laravel’in yayınlama belgesi projenin kök klasöründen yayın yapmayı açıkça yasaklar; kökte duran .env dosyası veritabanı parolasını ve uygulama anahtarını taşır. Bu yüzden cPanelde Laravel kurulumu yaparken asıl iş, alan adının yalnız public klasörünü göstermesini sağlamaktır.
İkinci fark SSH’tır. Narhost paylaşımlı hosting paketlerinde SSH erişimi yoktur; composer ve php artisan komutlarını bilgisayarınızda çalıştırıp sonucu yüklersiniz. Kalıcı olarak Artisan, kuyruk işçisi ya da SSH gerektiren bir uygulama kuruyorsanız VPS daha uygun bir ortamdır.

Beklenen sonuç: protokol, alan adı, dizin ve sürüm seçilen kurulum formu açılır.
Beklenen sonuç: kurulum tamamlanır ve adres verilir. Adres Laravel karşılama sayfası yerine dizin listesi ya da 403 gösteriyorsa Yöntem 2’deki belge kökü adımını uygulayın.
composer create-project laravel/laravel proje
cd proje
composer install --no-dev --optimize-autoloader
Beklenen sonuç: vendor klasörü oluşur. create-project uygulama anahtarını kendisi üretir; .env içindeki APP_KEY satırı dolu gelir.
vendor dahil sıkıştırın ve Dosya Yöneticisi’nde public_html dışına, ana dizine yükleyip çıkarın; sonuç /home/kullanici/laravel gibi bir klasör olmalı.
Beklenen sonuç: laravel klasöründe app, public, storage, vendor ve .env görünür.
public klasörüne bağlayın. Eklenti alan adı ya da alt alan adıysa cPanel → Alan Adları → Alan Adları → Yönet sayfasında belge köküne laravel/public yazıp güncelleyin. cPanel belgesine göre ana alan adının belge kökü değiştirilemez; ana alan adında projeyi public_html/laravel altına koyup public_html/.htaccess dosyasına şunu yazın:
RewriteEngine On
RewriteRule ^(.*)$ laravel/public/$1 [L]
Beklenen sonuç: alan adı Laravel karşılama sayfasını açar.
.env dosyasını üretime göre düzenleyin. Laravel varsayılan olarak SQLite ile gelir; MySQL’e çevirin:
APP_ENV=production
APP_DEBUG=false
APP_URL=https://ornek.com
DB_CONNECTION=mysql
DB_HOST=localhost
DB_DATABASE=kullanici_laravel
DB_USERNAME=kullanici_laravel
DB_PASSWORD=parolaniz
Beklenen sonuç: hata sayfaları ayrıntı göstermez, uygulama veritabanına bağlanır.
php artisan migrate komutunu bilgisayarınızdan sunucu veritabanına yöneltin. Yerelde php artisan config:cache çalıştırmayın; önbellek dosyası bilgisayarınızın klasör yollarını taşır.
Beklenen sonuç: phpMyAdmin’de migrations ve users tabloları görünür.
Sonuç
Alan adı Laravel sayfasını açıyor, https://ornek.com/.env ve https://ornek.com/laravel/.env adresleri 404 dönüyorsa kurulum güvenlidir. storage/logs/laravel.log dosyasında yeni hata satırı yoksa uygulama sorunsuz çalışıyordur.
storage ve bootstrap/cache klasörleri yazılabilir değildir ya da PHP sürümü düşüktür; klasörleri 755 yapın ve hata günlüklerine bakın.No application encryption key has been specified.APP_KEY boş kalmıştır; yerel .env dosyanızdaki değeri kopyalayın.SQLSTATE[HY000] [1045] Access denied. Veritabanı adı ya da kullanıcısı öneksiz yazılmıştır; cPanel’deki tam adı kullanın.public/.htaccess dosyası ZIP’e girmemiştir; gizli dosyaları dahil ederek yeniden yükleyin.Narhost desteği
Talebe şunları ekleyin: alan adı, Laravel sürümü, hata metni birebir, laravel.log dosyasının son satırları ve denediğiniz adımlar.
Sonraki adımlar
Çalışır. Laravel’in çalışması için SSH gerekmez; yalnız kurulum ve güncelleme komutlarını bilgisayarınızda çalıştırıp dosyaları yüklersiniz.
Laravel 13 en az PHP 8.3 ister. Narhost paylaşımlı hostingte 8.3 ve 8.4 seçilebilir; eski bir Laravel 10 projesi 8.1 ve 8.2 ile de çalışır.
cPanel’deki Git Version Control kodu depodan çekebilir. SSH olmadığı için vendor klasörünü yerelde üretip ayrıca yüklemek en sorunsuz yoldur.
Bu makale sorununuzu çözdü mü?
Geri bildiriminiz için teşekkürler.
Çözemediniz mi?
Teknik ekibimiz sunucu tarafındaki ayarları sizin için kontrol edebilir. Destek talebinizde alan adınızı ve aldığınız hata metnini paylaşmanız süreci hızlandırır.