Laravel Projelerini cPanel Web Hosting'de Çalıştırma
Web Hosting

Laravel Projelerini cPanel Web Hosting'de Çalıştırma

Laravel projelerinizi paylaşımlı cPanel web hosting üzerinde güvenli bir şekilde çalıştırmanın alternatif yöntemini öğrenin. Adım adım kurulum rehberi.

Kürşat Sezgin

Kürşat Sezgin

Teknik Ekip Lideri

23 Ocak 2025
5 dk okuma

Laravel projeleri güvenlik gereği web erişiminin sadece public klasörü üzerinden yapılmasını gerektirir. cPanel'de ana domain için document root değiştirilemediği için aşağıdaki alternatif yöntemi uygulayabilirsiniz.

Bu rehberde anlattığımız yöntemi Netlen Web Hosting paketlerimizde kolayca uygulayabilirsiniz. Tüm paketlerimiz cPanel kontrol paneli, ücretsiz SSL sertifikası ve 7/24 teknik destek ile birlikte sunulmaktadır.

Neden Bu Yöntem Gerekli?

Laravel'in app, vendor, config, .env gibi hassas dosyalarının public_html içinde olmaması güvenlik açısından kritik öneme sahiptir. Bu dosyalar doğrudan web üzerinden erişilebilir olursa, veritabanı şifreleri, API anahtarları ve uygulama mantığı gibi gizli bilgiler açığa çıkabilir.

Kurulum Adımları (cPanel Üzerinden)

Adım 1: File Manager'a Erişim

cPanel kontrol panelinize giriş yapın ve File Manager bölümüne gidin.

Adım 2: Laravel Dosyalarını Yükleme

Laravel proje dosyalarınızı public_html dışında bir klasöre yükleyin.

Örnek klasör yapısı:

/home/kullanici/laravel

Bu klasör web üzerinden doğrudan erişilemez olacaktır, bu da güvenliği artırır.

Adım 3: Public Dosyalarını Taşıma

Yüklediğiniz Laravel klasörü içinde bulunan public klasörünün içindeki tüm dosyaları seçin ve aşağıdaki klasöre taşıyın veya kopyalayın:

/home/kullanici/public_html

Adım 4: index.php Dosyasını Düzenleme

public_html klasörü içindeki index.php dosyasını düzenleyin. Aşağıdaki satırları bulun ve güncelleyin:

require __DIR__.'/../laravel/vendor/autoload.php';

$app = require_once __DIR__.'/../laravel/bootstrap/app.php';

⚠️ Önemli Not

Eğer klasör adınız farklı ise laravel kısmını kendi klasör adınıza göre güncelleyin.

Örnek: Eğer proje klasörünüz /home/kullanici/project ise:

require __DIR__.'/../project/vendor/autoload.php';

$app = require_once __DIR__.'/../project/bootstrap/app.php';

Adım 5: Test Etme

İşlem tamamlandıktan sonra sitenizi tarayıcıda açın. Laravel uygulamanız çalışıyor olmalıdır.

Klasör Yapısı Özeti

Kurulum sonrası klasör yapınız şu şekilde olmalıdır:

/home/kullanici/

├── laravel/ (Laravel ana dosyaları - web erişimi YOK)

│ ├── app/

│ ├── bootstrap/

│ ├── config/

│ ├── database/

│ ├── resources/

│ ├── routes/

│ ├── storage/

│ ├── vendor/

│ ├── .env

│ └── ...

└── public_html/ (Web erişimi VAR)

├── index.php (Düzenlenmiş)

├── .htaccess

├── css/

├── js/

└── ...

Ek Güvenlik Önerileri

  • storage ve bootstrap/cache İzinleri: Bu klasörlerin yazılabilir olması gerekir. cPanel üzerinden izinleri 755 veya 775 olarak ayarlayın.
  • .env Dosyası: Bu dosyanın asla public_html içinde olmadığından emin olun.
  • APP_DEBUG: Production ortamında .env dosyasında APP_DEBUG=false olarak ayarlayın.
  • APP_KEY: Her kurulumda benzersiz bir uygulama anahtarı oluşturulduğundan emin olun.

Sık Karşılaşılan Sorunlar

500 Internal Server Error

  • index.php içindeki dosya yollarını kontrol edin
  • storage ve bootstrap/cache klasör izinlerini kontrol edin
  • PHP versiyonunun Laravel gereksinimleriyle uyumlu olduğundan emin olun

Sayfa Bulunamadı (404)

  • .htaccess dosyasının public_html içinde olduğundan emin olun
  • cPanel'de Apache mod_rewrite modülünün aktif olduğunu kontrol edin

Sonuç

Bu yöntemle Laravel projelerinizi paylaşımlı web hosting üzerinde güvenli bir şekilde çalıştırabilirsiniz. Hassas dosyalarınız web erişiminden korunurken, uygulamanız sorunsuz çalışmaya devam eder.

Laravel projeniz için daha fazla kaynak, performans veya özel yapılandırma gerekiyorsa, VPS sunucu veya Bulut Sunucu çözümlerimizi inceleyebilirsiniz.

Laravel
cPanel
Web Hosting
PHP
Paylaşımlı Hosting

Bu yazıyı paylaşın

Kürşat Sezgin

Yazar Hakkında

Kürşat Sezgin

Teknik Ekip Lideri

Netlen'de teknik ekip lideri olarak sunucu yönetimi, ağ güvenliği ve web teknolojileri alanında sistem yönetimi ve teknik destek sağlıyorum. Zaman zaman bu konularda teknik blog yazıları da paylaşıyorum.

Yorumlar

Bu yazı hakkında okuyucu yorumları