Ubuntu sunucuda Nginx ve Php-fpm nasıl kurulur? Webserver ve SSL ayarları nasıl yapılır?

Ubuntu Sunucuda Nginx ve Php-fpm Kurulumu

Her şeyden önce, sunucunuza ssh üzerinden bağlanmanız gerekmektedir. Aşağıdaki adımlar Ubuntu sunucuda Nginx ve Php-fpm kurulumu için izlenebilir.

Nginx Kurulumu

Öncelikle mevcut paketlerin güncellenmesi gerekecektir. Terminal veya ssh komutu ile bu işlemi gerçekleştirebiliriz.

sudo apt update

Daha sonra Nginx’i kurabiliriz.

sudo apt install nginx

Bu noktada, Nginx’in başarılı bir şekilde kurulduğunu ve çalıştığını kontrol edebiliriz.

sudo systemctl status nginx

PHP-FPM Kurulumu

PHP-FPM (FastCGI Process Manager), PHP’i hızlı ve etkin bir şekilde işlemek için kullanılan bir araçtır. Aşağıdaki komut ile PHP ve PHP-FPM’i kurabiliriz.

sudo apt install php-fpm

Her ikisi de kurulduktan sonra, PHP-FPM’in çalıştığını kontrol edebiliriz.

sudo systemctl status php7.2-fpm

Webserver ve SSL Ayarları

Nginx Yapılandırma

Nginx yapılandırma dosyaları genellikle /etc/nginx/sites-available/ dizininde yer alır ve her bir domain için ayrı bir yapılandırma dosyası oluşturabiliriz.

sudo nano /etc/nginx/sites-available/your_domain

Açılan düzenleyicide, aşağıdaki kodu yerleştirip kaydedebiliriz.

server {
    listen 80;
    server_name your_domain www.your_domain;

    location / {
        proxy_pass http://localhost:8000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

Daha sonra yapılandırma dosyasını sites-enabled dizinine symlink yapabiliriz.

sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/

SSL Ayarları ve HTTPS’i Aktifleştirme

Let’s Encrypt SSL sertifikasını almak ve HTTPS’yi aktifleştirmek için Certbot aracını kullanabiliriz.

sudo apt install python-certbot-nginx

Daha sonra Certbot’u kullanarak SSL sertifikası alabiliriz.

sudo certbot --nginx -d your_domain -d www.your_domain

Bu işlemlerin tamamlanmasıyla birlikte Nginx’i yeniden başlatabilir ve yapılandırmaların doğruluğunu kontrol edebiliriz.

sudo systemctl restart nginx

TERİMLER:

Nginx: Açık kaynaklı bir web sunucusu ve ters proxy sunucusu.

PHP-FPM: PHP’nin hızlı ve etkin bir şekilde işlenmesi için kullanılan bir araç.

Certbot: Let’s Encrypt CA tarafından sağlanan SSL sertifikalarını kolayca almayı sağlayan bir araç.

SSH: Güvenli bir kanal üzerinden ağ hizmetlerini kullanmayı sağlayan bir protokol.

HTTPS: HTTP’nin SSL ve TLS protokolleri üzerinden güvenli bir versiyonu.

Let’s Encrypt: Ücretsiz SSL sertifikaları sunan ve genellikle Certbot ile kullanılan bir Certificate Authority (CA).