wp-config.php dosyası WordPress sitenizin beynidir; veritabanı şifrelerinizden güvenlik anahtarlarına kadar her şey burada saklanır. Aşağıda, hem güvenlik hem de performans odaklı, doğrudan kopyalayıp düzenleyebileceğin kapsamlı bir şablon hazırladım.
Güvenli wp-config.php Şablonu
<?php
/**
* WordPress Güvenlik Odaklı Yapılandırma Dosyası
*/
// 1. Veritabanı Bilgileri (Panelinizden gelen bilgilerle doldurun)
define( 'DB_NAME', 'veritabani_adi' );
define( 'DB_USER', 'kullanici_adi' );
define( 'DB_PASSWORD', 'guclu_sifre_buraya' );
define( 'DB_HOST', 'localhost' );
define( 'DB_CHARSET', 'utf8mb4' );
define( 'DB_COLLATE', '' );
/**
* 2. Benzersiz Güvenlik Anahtarları (Salt Keys)
* ÖNEMLİ: Aşağıdaki adresten yenilerini oluşturup buradakilerle değiştirin:
* https://api.wordpress.org/secret-key/1.1/salt/
*/
define('AUTH_KEY', 'buraya_rastgele_karakterler_gelecek');
define('SECURE_AUTH_KEY', 'buraya_rastgele_karakterler_gelecek');
define('LOGGED_IN_KEY', 'buraya_rastgele_karakterler_gelecek');
define('NONCE_KEY', 'buraya_rastgele_karakterler_gelecek');
define('AUTH_SALT', 'buraya_rastgele_karakterler_gelecek');
define('SECURE_AUTH_SALT', 'buraya_rastgele_karakterler_gelecek');
define('LOGGED_IN_SALT', 'buraya_rastgele_karakterler_gelecek');
define('NONCE_SALT', 'buraya_salt_gelecek');
/**
* 3. Veritabanı Tablo Ön eki
* Varsayılan 'wp_' yerine karmaşık bir şey kullanın (Örn: 'wbev_72_')
*/
$table_prefix = 'wbev_72_';
/**
* 4. Güvenlik ve Sıkılaştırma Ayarları
*/
// Dosya düzenleyiciyi kapat (Admin panelinden kod değişimini engeller)
define( 'DISALLOW_FILE_EDIT', true );
// Hata gösterimini kapat (Saldırganlara ipucu vermez)
define( 'WP_DEBUG', false );
@ini_set( 'display_errors', 0 );
// Revizyon sınırlandırması (Veritabanını şişirmez, performansı artırır)
define( 'WP_POST_REVISIONS', 5 );
// Otomatik çöp kutusu boşaltma (Gün sayısı)
define( 'EMPTY_TRASH_DAYS', 7 );
// SSL Zorunluluğu (Admin paneli için)
define( 'FORCE_SSL_ADMIN', true );
/**
* 5. FTP/Dosya Sistemi Yöntemi
* Eklenti yüklerken FTP bilgisi sormasını engellemek için
*/
define( 'FS_METHOD', 'direct' );
/** WordPress yolunu tanımlar */
if ( ! defined( 'ABSPATH' ) ) {
define( 'ABSPATH', __DIR__ . '/' );
}
/** WordPress değişkenlerini ve yollarını kurar */
require_once ABSPATH . 'wp-settings.php';
Bu Şablonu Uygularken Dikkat Etmen Gerekenler
-
Salt Keys (Güvenlik Anahtarları): Yukarıdaki örnekteki "rastgele karakterler" kısımlarını mutlaka WordPress.org API linkinden alacağın gerçek anahtarlarla değiştir. Bu, oturum çerezlerini şifrelemek için hayati önem taşır.
-
Tablo Ön Eki: Eğer mevcut bir sitenin ön ekini (
$table_prefix) değiştirirsen, veritabanındaki tüm tabloların adını da aynı şekilde güncellemen gerekir. Bu işlemi yapmadan önce mutlaka tam yedek al. -
Dosya İzinleri:
wp-config.phpdosyasının izinlerini (CHMOD) 400 veya 440 olarak ayarlamanı öneririm. Bu, dosyanın sadece sunucu tarafından okunmasını sağlar, başkaları tarafından yazılmasını engeller.
Ekstra İpucu: Dosyayı Taşımak
Güvenliği en üst seviyeye çıkarmak istersen, wp-config.php dosyasını sitenin ana dizininden (public_html) bir üst dizine taşıyabilirsin. WordPress bu dosyayı otomatik olarak bir üst dizinde de arayıp bulacaktır; bu sayede dosya web üzerinden tamamen erişilemez hale gelir.
