Table of contents
Geçenlerde bir projede apache yerine nginx kullanmamız gerekti. Aslında sonradan anladın ki nginx de kullansak, apache de kullansak sorunumuz çok başka bir şeymiş. Yine de böylece hızlıca bir nginx nasıl kurulur hikayesi ortaya çıktı.
Bende bunu kısaca nasıl bir anlatayım istedim.
Öncelikle bu anlatımı yaparken, temel seviye linux ve ubuntu bildiğinizi varsayarak anlatıyorum. Ayrıca ubuntu sunucuzun da kurulu olduğunu düşünüyorum.
Öncelikle ubuntudaki tüm paketlerimizi terminali açıp aşağıdaki komut ile güncelleyelim.
sudo apt-get update && apt-get upgrade
Sonrasında Nginx paketini yüklemek için aşağıdaki komutu çalıştıralım
sudo apt install nginx
Kurulum bittikten sonra, Ubuntu’nun firewall’ı açıksa, Nginx üzerinden 80 ve SSL de kullanacaksak 443 portuna izin vermiz gerekiyor.
Tüm portlara izin vermek için aşağıdaki komutu kullanabiliriz.
sudo ufw allow 'Nginx Full'
Daha sonrasında kontrol etmek için;
sudo ufw status
işime yaracaktır.
Burada eğer Full yetki verdiyseniz, hem HTTP hem de HTTPS kurallarını, ipv4 ve ipv6 olarak açılmış olduğunu göreceksiniz.
Nginx kurulduktan sonra servisi otomatik olarak açılmaktadır ancak bunu kontrol etmek isterseniz;
systemctl status nginx
komutunu çalıştırabilirsiniz. Eğer her şey yolundaysa buradaki çıktı şu şekilde olacak;
Eeee nginx nerede çalışıyor?
Bu güzel bir soru, eğer bunu soruyorsanız şuan ne yaptığınızın farkındasınız demektir.
Varsayılan olarak Nginx /var/www/html dizininde çalışmaktadır. Yani bu dizine gittiğinizde bir tane html dosyası göreceksiniz. tarayıcınıza http://localhost yazdığınızda bu html dosyasını görüntülersiniz.
Basitçe kurulum bu şekilde ama aslında bu kadarıyla bitmedi.
Sık Sorulan Sorular (S.S.S)
Ben bu dizine (/var/www/) dosya atmaya çalıştığımda hata alıyorum?
Evet çünkü bunun için yetkiniz olmayabilir. Ubuntu bu klasöre sudo yetkili kullanıcısıyla erişime izin verebilir.
Bu durumda kendi kullanıcınıza bu klasöre okuma, yazma gibi yetkiler vermeniz gerekecek.
sudo chown -R $USER:$USER /var/www/html
sudo chmod -R 755 /var/www/html
Yukarıdaki komutları çalıştırıp, yeniden denemenizi tavsiye ederim. Her şeyi doğru yaptıysanız, artık html klasöründe dosya atabilir ya da içerisinde değişiklikler yapabilirsiniz.
Bir Nginx sunucuda birden fazla domain barındıracaksam ne yapacağım?
Açıkcası bizde bu senaryoya gerek kalmadı ama bunun için, diğer kaynaklarda şu şekilde yapılması gerektiği yazıyor.
Bir tane klasör oluşturun, your_domain kısmına websitenizi bağlayacağınız domaini ekleyebilirsiniz. örneğin oguzhankalelioglu gibi. Sonrasında yukarıdaki yetki işlemlerini bu klasör için tekrardan yapın.
sudo mkdir -p /var/www/your_domain/html
Nginx ayarlarının olduğu dosya nerede?
Eğer kurumları normal bir şekilde yaptıysanız. Varsayılan ayar klasörü aşağıdaki gibidir.
/etc/nginx/sites-available/default
başına nano koyarak, terminalde yazdırdığınızda bu şekilde bir dosya açılması gerekiyor.
Burada yazanların ne anlama geldiğini daha sonra başka bir yazımızda tekrar değineceğiz.
Servisi Başlatma, Durdurma, Yeniden Başlatma Nasıl Yapılır?
Durdurmak için : sudo systemctl stop nginx
Başlatmak için : sudo systemctl start nginx
Yeniden başlatmak için: sudo systemctl restart nginx
Config değiştirince : sudo systemctl reload nginx
Evet kısaca Ubuntu’da Nginx kurulumunu anlatmış olduk. Başka bir yazıda detaylarına değinmek üzere görüşürüz.