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).