⚙️ 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.
Kuruluma başlamadan önce işletim sistemini güncellememiz fayda sağlayacaktır.
sudo apt update
sudo apt upgrade
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-full
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.nginx.conf
.
.
server_names_hash_bucket_size 64;
# server_name_in_redirect off;
.
.
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 phpunit
Paketleri kurduktan sonra
/etc/php/7.3/fpm/
dizini altında yer alan php.ini
dosyamızdaki ilgili alanları düzenleyelim.php.ini
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/Istanbul
Düzenlemelerimizin aktif olabilmesi için servisimizi yenileyelim.
sudo systemctl restart php7.3-fpm
Son olarak
php -v
komutu ile ekranda php versiyonunu görüyorsanız işlemimiz tamamdır.İş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.
Komut
Çıktı
sudo ufw app list
Available applications:
Nginx Full
Nginx HTTP
Nginx HTTPS
OpenSSH
Komutun çı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.
Komut
Çıktı
sudo ufw status
Status: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
Nginx HTTP ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx HTTP (v6) ALLOW Anywhere (v6)
Eğer bu komut sonrası
Status: inactive
çıktısını görüyorsanız güvenlik duvarınız zaten kapalı demektir. Bu aşamadaki işlemleri yapmanıza gerek yoktur.Nginx web sunucusunu ikinci adımda yüklemiştik. Şimdi web sunucu servisinin durumunu kontrol edelim.
systemctl status nginx
Nginx 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 process
Yukarı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.
Nginx default sayfası
Nginx servisi üzerinde başlatma, durdurma, yeniden başlatma, konfigürasyonu yeniden yükleme işlemlerini yapabilmek için
sudo systemctl xxx nginx
komutundaki xxx yerine start
, stop
, restart
ve reload
terimlerini kullanabilirsiniz.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 modified 3yr ago