🚀 Laravel 12 → 13 Geçiş Rehberi (Adım Adım Upgrade Guide)

Laravel ekosistemi hızla gelişmeye devam ediyor ve 2026 itibariyle Laravel 13 yayınlandı. Peki mevcut bir projeyi Laravel 12’den 13’e yükseltmek zor mu?

Bu yazıda, gerçek production projelerinde sorunsuz geçiş yapabilmen için gerekli tüm adımları sade ve net şekilde anlatıyorum.

📌 Laravel 13’e Geçmeden Önce Bilmeniz Gerekenler

Laravel 13 büyük bir kırıcı sürüm değil, ancak bazı önemli değişiklikler içeriyor.

✔️ En kritik değişiklikler:

  1. Minimum PHP: 8.3
  2. CSRF middleware değişti
  3. Queue event yapısında küçük değişiklikler var
  4. Cache ve serialization tarafı daha güvenli hale getirildi
  5. Bazı internal davranışlar güncellendi

🧱 1. PHP Versiyonunu Yükseltin

Laravel 13 kullanabilmek için:


php -v

En az:


PHP 8.3

👉 Eğer Docker kullanıyorsan:


FROM php:8.3-apache

📦 2. Composer Bağımlılıklarını Güncelleyin

composer.json dosyanızı şu şekilde güncelleyin:


"require": {
"php": "^8.3",
"laravel/framework": "^13.0",
"laravel/tinker": "^3.0"
},
"require-dev": {
"phpunit/phpunit": "^12.0"
}

Sonrasında:


composer update

⚠️ 3. CSRF Middleware Değişikliği

Laravel 13 ile birlikte:

❌ Eski:


VerifyCsrfToken::class

✅ Yeni:


Illuminate\Foundation\Http\Middleware\PreventRequestForgery::class

👉 Eğer withoutMiddleware() veya custom middleware kullanıyorsan mutlaka kontrol et.

⚙️ 4. Queue & Job Değişiklikleri

Queue event’lerinde küçük ama kritik değişiklikler var:

❌ Eski:


$event->exceptionOccurred

✅ Yeni:


$event->exception

❌ Eski:


$event->connection

✅ Yeni:


$event->connectionName

👉 Eğer event listener yazdıysan mutlaka kontrol et.

🧠 5. Cache Kullanımına Dikkat

Laravel 13 ile birlikte cache güvenliği artırıldı.

Problem:

Cache içine direkt obje atıyorsan:


Cache::put('user', $user);

👉 Bu artık sorun çıkarabilir.

Çözüm:

  1. Array kullan
  2. DTO kullan
  3. veya serialize izinlerini yönet

📦 6. 3. Parti Paketleri Kontrol Et

En kritik nokta burası 👇

Şunları kontrol etmeden upgrade yapma:

  1. Laravel Horizon
  2. Laravel Excel
  3. Spatie paketleri
  4. Sanctum / Passport
  5. Debug araçları

👉 Hepsinin Laravel 13 desteklediğinden emin ol.

🧭 7. Route Davranışı Değişti

Domain-based routing kullanıyorsan dikkat:

👉 Laravel 13’te domain route’lar artık daha öncelikli.

Bu da bazı route çakışmalarına sebep olabilir.

🧪 8. Test ve Temizlik

Upgrade sonrası mutlaka:


php artisan optimize:clear
php artisan config:clear
php artisan cache:clear
php artisan route:list
php artisan test

🔍 9. Hızlı Kontrol Komutları

Projende şunları ara:


grep -R "VerifyCsrfToken" app/
grep -R "exceptionOccurred" app/
grep -R "QueueBusy" app/
grep -R "Cache::put" app/

🧩 10. Güvenli Upgrade Stratejisi

Production proje için önerilen akış:

  1. Yeni branch aç
  2. PHP 8.3’e geç
  3. Composer update
  4. Paket uyumluluklarını düzelt
  5. Testleri çalıştır
  6. Staging ortamda dene
  7. Production’a al

🎯 Sonuç

Laravel 12 → 13 geçişi:

✅ Zor değil

⚠️ Ama dikkat gerektiriyor

Özellikle:

  1. Queue
  2. Cache
  3. Middleware
  4. 3rd party paketler

doğru kontrol edilirse sorunsuz upgrade yapılabilir.

Sıkça Sorulan Sorular

Laravel 12’den 13’e geçmek zor mu?

Hayır, Laravel 12’den 13’e geçiş genel olarak zor değildir. Ancak PHP 8.3 gereksinimi, bazı middleware değişiklikleri ve kullanılan paketlerin uyumluluğu kontrol edilmelidir. Özellikle production projelerde geçiş öncesi test yapılması önerilir.

Laravel 13’e geçmeden önce nelere dikkat etmeliyim?

Geçiş öncesinde PHP sürümünün 8.3 veya üzeri olduğundan emin olmalı, composer bağımlılıklarını güncellemeli ve kullandığınız tüm paketlerin Laravel 13 ile uyumlu olup olmadığını kontrol etmelisiniz. Ayrıca queue, cache ve middleware yapılarında değişiklikler olup olmadığını incelemelisiniz.

Laravel 13 production ortamında kullanılabilir mi?

Evet, Laravel 13 production ortamında kullanılabilir. Ancak yeni bir major sürüm olduğu için doğrudan canlı sistemlerde kullanmadan önce staging ortamında test edilmesi ve olası uyumsuzlukların giderilmesi önerilir.

Yorumlar

Log in or sign up to write a comment
Giriş
Sign Up