Panelsiz bir yapı ile, hafif, performanslı ve kontrolü tamamen sizde olan bir web sunucusu kurmak istiyorsanız doğru yerdesiniz. Bu makalede, CentOS tabanlı bir sistem üzerinde Nginx + PHP-FPM + MySQL bileşenleri ile çalışan bir web sunucusunun kurulumunu ele alıyoruz.
⚠️ Not: Bu içerik orijinal olarak CentOS 6 için hazırlanmıştır. Ancak CentOS 6 artık EOL (End of Life) durumundadır. Güncel sistemlerde AlmaLinux / Rocky Linux / CentOS Stream kullanmanız önerilir.
Kurulum Mimarisi (Genel Bakış)


Nginx → Web server PHP-FPM → PHP işlem yöneticisi MariaDB → Veritabanı
Tek Komut ile Kurulum
dnf -y update && \
dnf -y install epel-release && \
dnf -y install nginx php-fpm php-cli php-mysqlnd php-opcache php-gd php-curl php-mbstring php-xml mariadb-server && \
systemctl enable –now nginx php-fpm mariadb
PHP-FPM Ayarı (ÖNEMLİ)
sed -i ‘s/user = apache/user = nginx/’ /etc/php-fpm.d/www.conf
sed -i ‘s/group = apache/group = nginx/’ /etc/php-fpm.d/www.conf
systemctl restart php-fpm
Web Dizini ve Test Dosyası
mkdir -p /var/www/site/public_html
echo “” > /var/www/site/public_html/index.php
chown -R nginx:nginx /var/www/site
chmod -R 755 /var/www
Nginx Site Konfigürasyonu
nano /etc/nginx/conf.d/site.conf
(altdaki içeriği buraya yapıştırınız ctrl + x ile çıkarken kaydetmek için Y diye sorar) CTRL + X → Y → ENTER kaydettikten sonra cat /etc/nginx/conf.d/site.conf dosya içeriğini bu komut ile görüyorsanız tamamdır.
server {
listen 80;
server_name domain.com;
root /var/www/site/public_html;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location ~* \.(jpg|jpeg|png|gif|css|js|ico)$ {
expires 30d;
}
}
systemctl restart nginx
Firewall Ayarı
firewall-cmd –permanent –add-service=http
firewall-cmd –permanent –add-service=https
firewall-cmd –reload
MariaDB İlk Kurulum
mysql_secure_installation
Güvenlik Temizliği
rm -f /var/www/site/public_html/index.php
Bu kurulum ile:
- Panelsiz, hafif ve hızlı bir web sunucusu kurdunuz
- Nginx + PHP-FPM ile yüksek performans elde ettiniz
- Modern ve sürdürülebilir bir altyapı oluşturduk
Tarayıcıdan sunucu IP veya domain aç: PHP çalışıyorsa kurulum tamamdır.
Bu yazının devamında güvenliği artırılmış bir yapı dönüştüreceğiz. Aşağıdaki eklentileri kuracağız.
- SSL (Let’s Encrypt – otomatik yenileme)
- Nginx FastCGI Cache
- Cloudflare + WAF + gerçek IP
- Fail2Ban + brute force koruma
- Rate limit & bot koruması
