WordPress Manuel Kurulumu: VDS'te Sıfırdan Kuruluma Tam Rehber
VDS'inde WordPress'i panel olmadan manuel kurma. Apache/Nginx, PHP, MySQL, dosya izinleri ve güvenlik adımları.
Plesk/cPanel kullanmadan VDS’inde WordPress’i sıfırdan manuel kurmak istiyorsan doğru yerdesin. Bu rehberde Ubuntu 22.04 üzerinde LAMP/LEMP stack hazırlığı, WordPress dosyalarının yerleştirilmesi, MySQL veritabanı oluşturma ve güvenlik adımlarını anlatıyoruz.
Önkoşullar
- 2 vCPU + 2 GB RAM VDS (giriş seviyesi WordPress için)
- Ubuntu 22.04 / Debian 12
- Root erişimi (
sudo) - Domain DNS A kaydı VDS IP’sine işaret etmeli
1. Sistemi güncelle
sudo apt update && sudo apt upgrade -y
2. LAMP stack kur (Apache + MySQL + PHP)
LEMP (Nginx) için Nginx yazımıza bakabilirsin.
sudo apt install apache2 mysql-server -y
# PHP 8.3 + WordPress için gerekli modüller
sudo apt install php8.3 php8.3-fpm php8.3-mysql php8.3-curl php8.3-gd \
php8.3-mbstring php8.3-xml php8.3-zip php8.3-imagick libapache2-mod-php8.3 -y
sudo systemctl enable --now apache2 mysql
3. MySQL’i güvenli hale getir
sudo mysql_secure_installation
- Root parolası belirle
- Anonymous users → Yes (sil)
- Remote root login → Yes (engelle)
- Test database → Yes (sil)
Detaylı MySQL yönetimi için MariaDB/MySQL yazımız.
4. WordPress için veritabanı oluştur
sudo mysql -u root -p
CREATE DATABASE wordpress_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'GUCLU_PAROLA_BURAYA';
GRANT ALL PRIVILEGES ON wordpress_db.* TO 'wp_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
5. WordPress’i indir
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
sudo mv wordpress /var/www/siten.com
Çoklu site için /var/www/site2.com gibi ayrı klasörler kullan.
6. Dosya izinlerini ayarla
sudo chown -R www-data:www-data /var/www/siten.com
sudo find /var/www/siten.com -type d -exec chmod 755 {} \;
sudo find /var/www/siten.com -type f -exec chmod 644 {} \;
wp-content/uploads için yazma izni:
sudo chmod -R 775 /var/www/siten.com/wp-content
7. Apache vhost yapılandır
sudo nano /etc/apache2/sites-available/siten.com.conf
<VirtualHost *:80>
ServerName siten.com
ServerAlias www.siten.com
DocumentRoot /var/www/siten.com
<Directory /var/www/siten.com>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/siten.com_error.log
CustomLog ${APACHE_LOG_DIR}/siten.com_access.log combined
</VirtualHost>
sudo a2enmod rewrite
sudo a2ensite siten.com.conf
sudo a2dissite 000-default.conf
sudo systemctl reload apache2
8. wp-config.php dosyasını yapılandır
cd /var/www/siten.com
sudo cp wp-config-sample.php wp-config.php
sudo nano wp-config.php
Düzenle:
define( 'DB_NAME', 'wordpress_db' );
define( 'DB_USER', 'wp_user' );
define( 'DB_PASSWORD', 'GUCLU_PAROLA_BURAYA' );
define( 'DB_HOST', 'localhost' );
Authentication keys için: https://api.wordpress.org/secret-key/1.1/salt/ → çıkanı kopyala, wp-config.php’deki ilgili bölüme yapıştır.
9. SSL kur
Mutlaka şart — Let’s Encrypt yazımız:
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache -d siten.com -d www.siten.com
10. Tarayıcıda kuruluma devam et
https://siten.com aç:
- Dil seç → Continue
- Site Title, admin Username, Password, Email → Install WordPress
5 saniye içinde WordPress hazır.
Güvenlik adımları (kurulum sonrası)
- Admin kullanıcı adını “admin” yapma (default brute-force hedefi)
- wp-admin’i firewall’la kısıtla — sadece kendi IP’nden erişim (UFW yazımız)
- XML-RPC kapat — WP DDoS saldırılarına alet olur
- 2FA eklentisi kur: Wordfence Login Security
- Otomatik güncelleme aktif et:
wp-config.php’yedefine('WP_AUTO_UPDATE_CORE', 'minor'); - Cron yedek kur: Plesk yoksa kendi cron’unu yaz (cron yazımız)
Performans optimizasyonu
- OPcache aktif et:
php.ini→opcache.enable=1 - Object cache: Redis kur,
redis-cliile bağlan - Cache eklentisi: WP Rocket / LiteSpeed Cache
- CDN: Cloudflare yazımız
Detaylı performans için WordPress Hosting yazımız.
Sık karşılaşılan hatalar
- “Error establishing database connection”:
wp-config.phpDB bilgileri yanlış ya da MySQL servis kapalı - 404 Not Found (permalink’ler):
mod_rewriteaktif değil →sudo a2enmod rewrite - White screen of death: PHP error →
tail -f /var/log/apache2/error.log - “Allowed memory size exhausted”:
wp-config.php’yedefine('WP_MEMORY_LIMIT', '256M'); - Image upload fail:
wp-content/uploadsizinleri yanlış
Sonuç
Manuel kurulum 20 dakikalık iş ama tam kontrol verir — Plesk gibi panel ek lisans gerektirir, manuel ücretsizdir. Production WordPress için manuel kurulum + nginx-proxy + Let’s Encrypt + Cloudflare = en hızlı stack.
KavesNET VDS paketleri NVMe SSD ile WordPress için optimize.
Ähnliche Beiträge
Das könnte Sie auch interessieren.
Die 3-2-1-Backup-Regel: So verlieren Sie Server-Daten nie wieder
Die 3-2-1-Backup-Regel ist der Goldstandard für Server-Backup-Strategien. Wir erläutern Regel, Automation und KavesNETs Backup-Infrastruktur.
Weiterlesen
Site von Plesk zu Plesk migrieren: Migrator-Anleitung
Sites, Mail, DB und DNS in einem Schritt mit Plesk Migrator umziehen. Setup, Testmigration und Cutover.
Weiterlesen
FileZilla: Dateimigration zwischen zwei VDS
Site vom alten zum neuen VDS migrieren: FileZilla über FTP/SFTP, Geschwindigkeitstipps, Berechtigungen und Fehlerbehandlung.
Weiterlesen