7/24 Türkçe destek:[email protected]Sistem durumuDestek talebi

Ubuntu VPS’e Nginx ve PHP-FPM Kurulumu

Okuma süresi: 2 dk

Kısa yanıt: sudo apt install nginx php-fpm php-mysql ile paketleri kurun, /etc/nginx/sites-available/alanadiniz.conf dosyasında server_name, root ve PHP için fastcgi_pass ayarlarını yapın, dosyayı sites-enabled’a bağlayıp sudo nginx -t && sudo systemctl reload nginx ile etkinleştirin.

Bu rehber kimin için: Kendi web sunucusunu kuran VPS kullanıcıları · Gereken süre: 30 dakika · Seviye: İleri

Nginx, düşük bellek kullanımı ve yüksek eşzamanlı bağlantı kapasitesiyle VPS’lerde en çok tercih edilen web sunucularından biridir. PHP uygulamaları için Nginx, PHP kodunu PHP-FPM servisine iletir. Ubuntu’nun depolarındaki PHP sürümü dağıtım sürümüne bağlıdır.

Kurulum

  1. Paketleri kurun: sudo apt update && sudo apt install nginx php-fpm php-mysql php-xml php-mbstring php-curl -y.
  2. PHP sürümünü öğrenin: php -v; soket yolu /run/php/php8.X-fpm.sock biçimindedir.
  3. Dizin oluşturun: sudo mkdir -p /var/www/alanadiniz && sudo chown -R $USER:www-data /var/www/alanadiniz.
  4. Sunucu bloğu: /etc/nginx/sites-available/alanadiniz.conf dosyasında server_name alanadiniz.com www.alanadiniz.com; root /var/www/alanadiniz; index index.php index.html; satırlarını ve location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.X-fpm.sock; } bloğunu yazın.
  5. Etkinleştirin: sudo ln -s /etc/nginx/sites-available/alanadiniz.conf /etc/nginx/sites-enabled/ ve varsayılan siteyi kaldırmak için sudo rm /etc/nginx/sites-enabled/default.
  6. Test edin: sudo nginx -t ve sorun yoksa sudo systemctl reload nginx.
  7. Güvenlik duvarı: sudo ufw allow 'Nginx Full'.

Kalıcı bağlantılar (WordPress vb.)

Çoğu PHP uygulaması için location / bloğuna try_files $uri $uri/ /index.php?$args; satırını ekleyin. Nginx .htaccess dosyalarını okumaz; Apache kurallarını Nginx sözdizimine çevirmeniz gerekir.

Hâlâ çözülmediyse

“502 Bad Gateway” hatası, fastcgi_pass yolundaki PHP sürümünün yanlış olduğunu veya PHP-FPM’in çalışmadığını gösterir; systemctl status php8.X-fpm ile kontrol edin. Kurulumdan sonra Certbot ile SSL ekleyin. Sunucu yönetimiyle uğraşmak istemiyorsanız LiteSpeed altyapılı web hosting paketlerimiz daha pratik bir seçenektir.

Sık sorulan sorular

Apache mi Nginx mi?

.htaccess kullanan uygulamalar için Apache, yüksek trafik ve statik içerik için Nginx yaygındır.

Birden fazla site barındırabilir miyim?

Evet; her site için ayrı bir sunucu bloğu dosyası oluşturun.

AlmaLinux ya da Rocky Linux’ta adımlar farklı mı?

Evet. Paketler sudo dnf install nginx php-fpm php-mysqlnd ile kurulur, site dosyası /etc/nginx/conf.d/alanadiniz.conf olarak yazılır (sites-available klasörü yoktur), PHP-FPM soketi /run/php-fpm/www.sock’tur ve servisler sudo systemctl enable --now nginx php-fpm ile başlatılır. Portları firewalld ile açın: sudo firewall-cmd --permanent --add-service=http --add-service=https ve ardından sudo firewall-cmd --reload.

İlgili rehberler