# PrestaShop'ta debug modu nasıl etkinleştirilir

> Debug modu, PrestaShop'un boş sayfasını veya genel hata mesajını, hatanın tam teknik detayıyla değiştirir: dosya, satır, sorumlu sınıf. Kendiliğinden açıklanmayan bir sorunla karşılaşıldığında etkinleştirilmesi gereken ilk şeydir.

- Source canonique : [https://allaux.fr/tr/guides/activer-mode-debug-prestashop](https://allaux.fr/tr/guides/activer-mode-debug-prestashop)
- Langue : TR
- Dernière mise à jour : 2026-09-30

## Doğrudan yanıt

> PrestaShop kök dizinindeki config/defines.inc.php dosyasını açın ve _PS_MODE_DEV_ sabitini true olarak ayarlayın, ardından hatalı sayfayı yeniden yükleyin: tam teknik mesaj boş ekranın yerini alır. Teşhis tamamlanır tamamlanmaz sabiti false'a geri alın; canlı ortamda asla açık bırakmayın.

## Debug modunu etkinleştirme ve devre dışı bırakma

1. **FTP, SFTP veya SSH ile bağlanın** — Değiştirilecek dosyaya ne yönetim panelinden ne de admin arayüzünden erişilebilir: sunucudaki dosyalara erişim gerekir.
2. **config/defines.inc.php dosyasını açın** — Bu dosya, 1.6, 1.7, 8 veya 9 sürümü fark etmeksizin PrestaShop kurulumunun config/ klasörünün kökünde yer alır.
3. **_PS_MODE_DEV_ sabitini değiştirin** — define('_PS_MODE_DEV_', false); satırını bulun, false değerini true ile değiştirin ve dosyayı kaydedin.
4. **İlgili sayfayı yeniden yükleyin** — PrestaShop 1.7 ve üzerinde, sayfanın altında çalıştırılan SQL sorgularını, yükleme süresini ve bir istisna oluştuysa hatanın tam yığınını gösteren bir Symfony hata ayıklama çubuğu belirir.
5. **Mesajı okuyun ve kök nedene ulaşın** — Mesaj, dosyayı, satırı ve genellikle sorumlu sınıfı veya eklentiyi belirtir. Doğru bir teşhis için aranması veya iletilmesi gereken metin budur.
6. **Sabiti tekrar false yapın** — Neden belirlenip düzeltildikten sonra _PS_MODE_DEV_ sabitini hemen false'a geri alın. Etkin bırakmak, teknik detayları ve bazen verileri herhangi bir ziyaretçiye açık hale getirir.

## config/defines.inc.php

```
define('_PS_MODE_DEV_', true);
```

## Debug modu somut olarak neyi değiştirir

Debug modu olmadan, PrestaShop PHP ve Smarty hatalarını yakalar ve ziyaretçiye hassas hiçbir şey göstermemek için bunun yerine genel bir sayfa veya boş bir ekran gösterir. Bu, canlı ortamda yararlı bir korumadır, ancak gerçekte ne olduğunu görmeyi de engeller.

Debug modu etkinken davranış sürüme göre değişir. PrestaShop 1.6'da, klasik PHP hataları ve Smarty derleme hataları doğrudan sayfada görüntülenir. Symfony framework'üne dayanan PrestaShop 1.7, 8 ve 9'da, dev modu ayrıca her sayfanın altında Symfony hata ayıklama çubuğunu (Symfony profiler) etkinleştirir: bu çubuk çalıştırılan SQL sorgularını, bunların çalışma sürelerini, tüketilen belleği ve bir istisna durumunda dosya ile satırı içeren tam çağrı yığınını listeler.

Debug modu önbellek davranışını da etkiler: geliştirme sırasında PrestaShop, derlenmiş bir sürüm sunmak yerine Smarty şablonlarını her istekte yeniden derler ve yapılandırmayı yeniden yükler. Bu daha yavaştır, bu da modu sürekli açık bırakmamak için bir başka nedendir.

## Sık yapılan hatalar

- Teşhisten sonra _PS_MODE_DEV_ sabitini false'a geri almayı unutmak: site tüm ziyaretçilere teknik bilgileri, bazen de yapılandırma verilerini açık hale getirir.
- Yönetim paneli erişilemez durumdayken dosyayı yönetim paneline entegre kod düzenleyicisi üzerinden değiştirmeye çalışmak: bu durumda yalnızca dosyalara doğrudan erişim işe yarar.
- PrestaShop debug modunu sunucunun PHP debug moduyla (display_errors) karıştırmak: ikisi de faydalıdır ancak aynı şeyi göstermez ve farklı yerlerden ayarlanır.
- SSL sertifikası hâlâ uyarı gösteren bir mağazada debug modunu etkinleştirmek: ortaya çıkan teknik sayfa, güvenli olmayan bir ağda açık şekilde görülebilir hale gelebilir.

## FAQ

### Debug modu mağazada bir şeyi bozabilir mi?

Hayır, hiçbir veriyi değiştirmez. Yalnızca PrestaShop'un hataları gösterme biçimini değiştirir ve 1.7 ile üzerinde bazı geliştirme önbelleklerini devre dışı bırakır; bu da siteyi geçici olarak yavaşlatır ama zarar vermez.

### FTP erişimim yok, ne yapmalıyım?

En azından FTP, SFTP, SSH veya barındırma panelinin dosya yöneticisi üzerinden sunucu dosyalarına erişim gerekir. Bu erişim olmadan config/defines.inc.php dosyası değiştirilemez.

### Debug modu etkin ama ekran hâlâ boş, neden?

Bu, hata PrestaShop yüklenmeden önce oluştuğunda görülür; örneğin düşük seviyeli bir ölümcül PHP hatası veya geçersiz bir .htaccess dosyası. Bu durumda doğrudan sunucu loglarına bakmak gerekir.

### Debug modu tüm mağazada mı yoksa yalnızca bir sayfada mı etkinleştirilmeli?

Sabit tüm siteye uygulanır, sayfa bazlı bir ayar yoktur. Zaten bu yüzden mümkün olduğunca kısa süre etkin kalmalıdır.

### Görüntülenen hata mesajı hassas bilgiler içeriyor, bu ciddi mi?

Mod uzun süre etkin kalırsa risk gerçektir: dosya yolları, veritabanı yapısı veya SQL sorguları görünebilir. Hızlıca düzeltip production moduna geri dönmek bu riski teşhis süresiyle sınırlar.
