Rehber 07 Ağustos 2026 · 5 dakika okuma

WordPress dosya izinleri: Hangi dizin ne olmalı? (net rehber)

WordPress’te dizin ve dosya izinleri için doğru 0755/0644/0700 değerleri, güvenli yapı ve hata senaryolarıyla net kontrol rehberi.

WordPress’te en sık görülen sorunların bir kısmı “kod bozuk” sanılsa da aslında dosya izinleri (permissions) kaynaklı olur. Yanlış izin; eklenti (plugin) yükleyememe, tema düzenleyememe, güncelleme sırasında hata ve dosya sistemiyle ilgili “403/500” sonuçları doğurur. Bu rehberde, WordPress dizin yapısına göre hangi klasöre hangi izinlerin verilmesi gerektiğini, güvenlik ve işlevsellik dengesini koruyarak net şekilde göreceksiniz.

Aşağıdaki değerler genel WordPress kurulumları içindir. Son karar, kullandığınız sunucu kullanıcıları (web server kullanıcı adı), dosya sistemi (ext4/xfs), kontrol paneliniz ve güvenlik eklentilerinizle uyumlu olmalıdır.

1) WordPress izinleri neden kritik? (somut etkiler)

WordPress dosya izinleri yanlış olduğunda şu semptomlar tipik olarak ortaya çıkar:

  • Tema/eklenti yükleme hatası: WordPress “yazma (write) izni yok” gibi mesajlar verir.
  • Güncelleme başarısız: WordPress çekirdek (core) veya eklenti güncellemeleri sırasında dosya oluşturma/üzerine yazma engellenir.
  • Medya yükleme sorunu: wp-content/uploads kısmı yazılabilir değilse medya yükleme başarısız olur.
  • WP-CLI/cron işleri çalışmaz: Otomatik görevler dosya yazamadığı için loglarda izin hataları görülür.
  • Aşırı açık izin güvenlik riski: Hem gizli dosyaların okunması hem de bazı senaryolarda zararlı komutların tetiklenmesi mümkün olur.

Bu yüzden hedef, “WordPress’in yazması gereken yerler yazılabilir olsun, geri kalanı minimum yetkiyle kalsın” yaklaşımıdır.

İzin değerleri nasıl okunur?

Linux’ta sayılar 3 basamaklı izin modudur:

  • 0755: dizin için yaygın güvenli değer (okuma/çalıştırma herkese açık, yazma sadece sahibinde)
  • 0644: dosya için yaygın güvenli değer (okuma herkese açık, yazma sadece sahibinde)
  • 0700: sadece sahibinin tam erişimi (yüksek gizlilik gereken dizinler için)

Not: WordPress için pratikte en çok kullanılan kombinasyonlar şunlardır: dizinler 0755, dosyalar 0644, gizli/özel dizinler ise 0700.

2) WordPress için varsayılan dizin haritası

WordPress kök dizin yapısını şu şekilde düşünün:

  • public_html/ veya www/ (web kökü)
  • public_html/wp-admin/
  • public_html/wp-content/
  • public_html/wp-includes/
  • public_html/wp-config.php
  • public_html/wp-content/uploads/
  • public_html/wp-content/themes/
  • public_html/wp-content/plugins/

İzin yaklaşımı aynı mantığa dayanır: - WordPress çekirdeği (wp-admin, wp-includes) genelde yazılabilir olmamalıdır. - Uygulama içerikleri (wp-content) yazılabilir olmalıdır; ama “tam açık” değil, ihtiyaca göre. - Yapılandırma dosyası (wp-config.php) sadece web server kullanıcısına okunabilir olmalı, gereksiz herkese açık olmamalıdır.

3) Net izin önerileri: Hangi dizin ne olmalı?

Aşağıdaki tablo, tipik bir WordPress kurulumunda güvenli ve işlevsel bir başlangıç sağlar.

Kural: Sahiplik (ownership) izinlerden daha önemlidir. İzinler doğru olsa bile doğru kullanıcı/sahip yoksa WordPress yazamaz.

Yol (örnek) Tür Önerilen izin Amaç
wp-content/uploads/ dizin 0755 Dosya/medya yazma alanı; dizin listleme kontrolü
wp-content/ dizin 0755 Eklenti/tema ve içerik için kontrollü erişim
wp-content/plugins/ dizin 0755 Plugin ekleme/yükleme genelde WordPress üzerinden olur
wp-content/themes/ dizin 0755 Tema yükleme/düzenleme için
wp-admin/ dizin 0755 Çekirdek yönetim alanı; yazma gerektirmez
wp-includes/ dizin 0755 Çekirdek dosyalar; yazma gerektirmez
wp-config.php dosya 0640 / 0600 Yapılandırma; sadece gerekli kullanıcı okumalı
index.php, wp-login.php vb. dosya 0644 Statik okunabilir dosyalar
*.php (genel) dosya 0644 WordPress kod dosyaları
.htaccess dosya 0644 Apache kullanıyorsanız rewrite kuralları için

“uploads neden 0755?”

wp-content/uploads/ dizini yazılabilir olmalı; ancak dizin izni tek başına tüm yetkiyi belirlemez. En yaygın senaryoda web server kullanıcı adı (ör. www-data veya nginx) dosya oluşturur/yazar. Bu yüzden tipik çözüm: - uploads/ dizini sahiplik olarak web server kullanıcısında - izin olarak 0755 (dizinlerde write gereksinimi sahiplik üzerinden sağlanır)

Dosya izinleri yine de yazma için yetersiz kalırsa WordPress “klasöre yazılamıyor” hatası verir; bu durumda öncelik sırasıyla sahiplik, ardından dizin izni kontrol edilmelidir.

Gizli dosyalar ve yapılandırma: wp-config.php

wp-config.php için öneri: - 0640: Web server grubuna okuyabilirlik verilir - 0600: En katı seçenek; sadece sahibi okuyabilir

Bu dosyada veritabanı parolası, salts ve kritik ayarlar bulunduğu için “herkese okuma” hedefi doğru değildir.

4) Sahiplik (chown) ve izin eşleşmesi: en sık hata burada

WordPress’in dosya yazması için sadece chmod (izin) değil, doğru kullanıcı/grup sahibi de gerekir.

Örnek kontrol komutları

Sunucunuzda web server kullanıcı adını ve WordPress dosyalarının sahibini kontrol edin:

ls -lah public_html/wp-content/uploads
ls -lah public_html/wp-config.php

Çıktıda şu mantığı arayın: - uploads ve WordPress güncelleme yapılan dosyalar: web server kullanıcısı veya WordPress’in çalıştığı hesap tarafından sahiplenmiş olmalı - wp-config.php: web server kullanıcısı (ve gerekirse grup) tarafından sahiplenmeli

Net pratik: Dizini sahipliğe göre düzeltin

Kullanıcı adınız örnek olarak www-data ise genel mantık şöyledir:

chown -R www-data:www-data public_html/wp-content/uploads

Bu komutu körlemesine tüm public_html için çalıştırmayın. Hedef sadece yazılması gereken dizinler olmalıdır.

5) Hata senaryolarına göre hızlı teşhis (net checklist)

Aşağıdaki kontrol listesi, iznin mi sahipliğin mi soruna yol açtığını hızlıca ayırır.

A) “WordPress medya yüklenmiyor”

  1. wp-content/uploads/ dizininin sahibi web server kullanıcı adı mı?
  2. uploads/ için izin 0755 mi ve üzerinde dosya oluşturulabiliyor mu?
  3. Sunucuda ek güvenlik modülleri (ör. SELinux) açıksa, context ayarları gerekebilir.

B) “Eklenti yükleme başarısız”

  1. wp-content/plugins/ dizini yazılabilir mi?
  2. WordPress dosya sistemi işlemleri için PHP hangi kullanıcıyla çalışıyor? (Farklı PHP-FPM havuzları farklı user kullanabilir.)
  3. Cache/otomasyon yazma işlemlerini de etkiliyor mu? (bazı kurulumlarda object-cache veya log dosyaları da izin ister)

C) “Dosya düzenleme (theme editor) çalışmıyor”

  1. wp-content/themes/ dizini ve tema dosyaları web server tarafından sahipleniyor mu?
  2. Dosya izinleri 0644 ise, düzenleme için yazma gereksinimi yine sahiplik üzerinden karşılanmalıdır.

D) “Güncellemelerde 500/403”

  1. Apache/Nginx özel kural dosyaları (özellikle .htaccess) yanlış izin aldı mı?
  2. Dosya izinleri çok kısıtlı hale geldiyse WordPress PHP dosyalarını bile okuyamayabilir.
  3. Güncelleme sürecinde WordPress geçici dosya yazıyor olabilir; bu geçici dizin (bazı kurulumlarda wp-content/ altında) izin gerektirir.

6) Güvenli ve çalışır sonuç için önerilen yapı (aksiyon planı)

Net şekilde ilerlemek için şu sıralamayı uygulayın:

  1. Önce sahiplik: uploads/ ve yazma gereken içerik dizinlerinde web server kullanıcısı/grubu doğru mu?
  2. Sonra izin: Dizini 0755, dosyayı 0644 yaklaşımına geri dönün.
  3. wp-config.php’yi kısıtlayın: 0600/0640.
  4. Değişiklik sonrası WordPress’te şu işlemleri test edin: - Medya yükleme - Eklenti yükleme (küçük bir eklenti) - Tema düzenleme (gerekirse) - WordPress güncellemesi (mümkünse staging ortamında)
  5. Üretimde bir şey bozulursa geri dönüş için değişiklik öncesi dosya durumu log veya yedeklenmiş olmalı.

Sonuç olarak, WordPress için en doğru izin stratejisi “tek bir sihirli chmod değeri” değil; sahiplik + dizin/dosya izinleri + gizli dosyaları kısıtlama üçlüsüdür. Sunucunuzda mevcut durumu ls -lah ile kontrol edip sadece yazması gereken dizinleri düzeltin; böylece hem güncelleme/medya sorunlarını çözer hem de gereksiz risk oluşturmazsınız.

Etiketler: #wordpress #dosya izinleri #vds #vps #hosting #güvenlik

Hosting karşılaştırması yapmaya hazır mısın?

100+ firmanın fiyatlarını tek tıkla karşılaştır, en uygun paketi bul.

Hosting Karşılaştır →

İlgili Yazılar

0 ürün seçildi
NetKıyas AI
Hosting danışmanınız
Merhaba! Ben NetKıyas yapay zekâ asistanı. Hosting, VDS, VPS veya sunucu seçiminde size yardımcı olabilirim. Ne arıyorsunuz?