Nginx Web server üzerinde bir den fazla host barındırmak için virtual host (nginx virtual host) adında sanal web sunucuları oluşturabilirsiniz. Bu işlem bir fiziksel yada sanal sunucu üzerinde birden fazla alan adına ait web sitesini publish etmenizde işinize yarayacaktır. öncelikle nginx kurulumu için burayı, nginx konfigürasyonu için ise burayı kullanabilirsiniz. Hadi gelin başlayalım o zaman;
- Web Sitesinin Oluşturulması ya da Kaynak Dosyaların İlgili Dizinlere Taşınması
Nginx web sunucusu kendine ait default index.html dosyasını /var/www/html dizini altında tutmaktadır. Bu publish işlemi için 80 numaralı portu default olarak kullanmaktadır. Bizim yapmamız gereken yayınlamak istediğimiz web sitesine ait olacak ve /var/www/ altında tutulacak bir virtual host klasörü oluşturmaktır. Bunu için;
Cd /var/www/ |
Mkdir -p Klasörİsmi
Mkdir –p inanc1.info inanc2.info |
Cd inanc1.info |
nano index.html
nano index.html
<html> <head> <title>İnanc1.info Testing </title> </head> <body> <h1>inanc1.info Testing</h1> </body> </html> |
Bu şekilde /var/www/inanc1.info ve /var/www/inanc2.info dizinlerinde ilgili html dosyalarını oluşturalım yada publish etmek istediğimiz projenin kaynak dosyalarını bu alanlara koyalım.
- Konfigürasyon İşlemlerinin Yapılması
Yapılması planlanan konfigürasyon işlemi ile alakalı olarak /etc/nginx/conf.d/ dizini altında ilgili conf dosyalarımızı oluşturalım. Bunun için;
Cd /etc/nginx/conf.d |
nano inanc1.info
server { listen 80; # PortNumarası listen [::]:80; # IPV6 Port Numarası root /var/www/inanc1.info; # WebSitesinin Kaynak dosya yolu index index.html index.htm; # Kaynak dosya içerisindeki default sayfa adı server_name www.inanc1.info; # sunucu yada domain adı location / { try_files $uri $uri/ =404; } } |
İkinci host için ise
Şimdiye kadar kullanmak istediğimiz 2 host için iki ayrı conf dosyası oluşturduk. Web sitelerimiz de hazır. Şimdi publish etmek için /etc/nginx/sites-enabled dizinine link oluşturup yayına alabiliriz. Bunun için;
link –s /etc/nginx/conf.d/inanc1.conf /etc/nginx/sites-enabled/ |
link –s /etc/nginx/conf.d/inanc2.conf /etc/nginx/sites-enabled/ |
Artık ilgili sayfalar publish edilmiş durumda. Nginx tarafında
Systemctl restart nginx.service |
İle tüm değişiklikleri uygulayalım.
- Virtual Host Kontrollerinin Yapılması
www.inanc1.info ve www.inanc2.info server adları ile ilgili sunucuya ulaştığımda sonuç aşağıdaki gibi.
![]() | ![]() |