⚙️ Nginx Kurulumu
Nginx web sunucu yazılımının nasıl kurulacağını öğreneceğiz.
Nginx web sunucu yazılımının ne olduğunu ve nasıl çalıştığını öğrendikten sonra artık kurulum dersimize başlıyoruz. Bu dersimizde Ubuntu 16.04 işletim sistemini kullanarak konuları işleyeceğiz.
1. İşletim Sisteminin Güncellenmesi
Kuruluma başlamadan önce işletim sistemini güncellememiz fayda sağlayacaktır.
sudo apt update
sudo apt upgrade2. Nginx Paketinin Kurulması
Nginx web sunucusunu artık indirerek yükleyebiliriz.
sudo apt install nginx📌 Herhangi bir sebeple nginx yüklemesini kaldırmak ve tekrar kurmak istediğinizde tüm konfigürasyonu ile birlikte nginx i kaldırmak için şu komutu çalıştırabilir ve ardından yukarıdaki kodla birlikte tekrardan yükleyebilirsiniz.
sudo apt purge nginx nginx-common nginx-full3. Nginx Konfigürasyonunun Ayarlanması
Hash bucket memory problemini engellemek için (Problem Nedir?) /etc/nginx dizini altında yer alan nginx.conf dosyasını nano veya gedit gibi editörlerle açarak server_names_hash_bucket_size 64 satırının başındaki # işaretini siliniz.
.
.
server_names_hash_bucket_size 64;
# server_name_in_redirect off;
.
.4. PHP-FPM Paketinin Kurulması
Sunucumuzda PHP dosyalarımızın yorumlanabilmesi için PHP-FPM paketimizi kurmalıyız. Bunun için aşağıdaki komutları çalıştırabilirsiniz.
sudo add-apt-repository ppa:ondrej/php
sudo apt-get install software-properties-common
sudo apt update
sudo apt-get install php7.3-fpm php7.3-cli php7.3-mysql phpunitPaketleri kurduktan sonra /etc/php/7.3/fpm/ dizini altında yer alan php.ini dosyamızdaki ilgili alanları düzenleyelim.
file_uploads = On
allow_url_fopen = On
memory_limit = 256M
cgi.fix_pathinfo = 0
upload_max_filesize = 100M
max_execution_time = 360
date.timezone = Europe/IstanbulDüzenlemelerimizin aktif olabilmesi için servisimizi yenileyelim.
sudo systemctl restart php7.3-fpmSon olarak php -v komutu ile ekranda php versiyonunu görüyorsanız işlemimiz tamamdır.
5. Güvenlik Duvarını Ayarlama
İşletim sistemimizde güvenlik duvarımız etkinse Nginx web sunucusunun engellenmesini önlemek için Nginx i beyaz listeye eklemeliyiz.
Öncelikle güvenlik duvarı ile hangi uygulamaların kullanılabilir olduğunu görelim.
sudo ufw app listAvailable applications:
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSHKomutun çıktısında gördüğünüz uygulamalar için güvenlik duvarına kural yazabiliriz. Öyleyse ilk kuralımızı yazalım.
sudo ufw allow 'Nginx HTTP'HTTP üzerinden yani 80 portundan gelen trafiğe izin vererek Nginx in kısıtlanmadan kullanılmasını sağladık. Şimdi son durum kontrolünü yapalım.
sudo ufw statusStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
Nginx HTTP ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx HTTP (v6) ALLOW Anywhere (v6)6. Web Sunucu Kontrolü
Nginx web sunucusunu ikinci adımda yüklemiştik. Şimdi web sunucu servisinin durumunu kontrol edelim.
systemctl status nginxNginx web sunucu servisinin durumunu kontrol ettiğimizde aktif olduğunu görmemiz gerekiyor.
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-12-09 11:38:13 PST; 49min ago
Docs: man:nginx(8)
Main PID: 2369 (nginx)
Tasks: 2 (limit: 1153)
CGroup: /system.slice/nginx.service
├─2369 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─2380 nginx: worker processYukarıda ki çıktıda olduğu gibi Active: active (running) çıktısını gördüyseniz Nginx web sunucu yazılımı başarıyla çalışıyor demektir. Artık http://sunucu_ip_adresi veya localhost veya 127.0.0.1 adresleri üzerinden Nginx default sayfasına erişebilir ve aşağıdaki resimde olduğu gibi çıktıyı görebilirsiniz.

Artık Nginx web sunucumuzu başarıyla çalıştırdıktan sonra ilerleyen derslerimizde web sunucu uygulamalarımızı kurmaya başlayacağız.
Last updated
Was this helpful?