Web Hosting Nedir
Sanal konak, özel bir yazılım ve donanım teknolojisidir.Ağ üzerindeki her bilgisayarı birden fazla sanal ana bilgisayara bölebilir.Her sanal konak bağımsız olarak dışarıya www hizmetleri sağlayabilir, böylece bir ana bilgisayar dış dünyaya birden fazla web sağlayabilir. Hizmetler, her sanal konak bağımsızdır ve birbirini etkilemez.
Sanal ana bilgisayar yapılandırması nginx aracılığıyla gerçekleştirilebilir, nginx üç tür sanal ana bilgisayar yapılandırmasını destekler, 1. IP tabanlı sanal ana bilgisayar, 2. Etki alanı adına dayalı sanal ana bilgisayar 3. Bağlantı noktası tabanlı sanal ana bilgisayar
Nginx yapılandırma dosyasının yapısı
Nginx'in yapılandırma dosyası yapısı aşağıdaki gibidir:
...... Etkinlikler { ....... } http { ....... server { ....... } server { ....... } }Her sunucu sanal bir ana bilgisayardır.
Bir: IP tabanlı sanal ana bilgisayar yapılandırması
Linux işletim sistemi, IP takma adları eklemeye izin verir.IP takma adları, fiziksel bir ağ kartındaki birden çok IP adresini bağlar. Bu, tek bir ağ kartı kullanarak aynı sunucu üzerinde birden çok IP tabanlı sanal ana bilgisayarın çalıştırılmasını mümkün kılar.
1. Talep
Bir nginx sunucusu iki ips'yi bağlar: 192.168.101.3, 192.168.101.103
Farklı ip isteklerine erişim, farklı html dizinleri, yani:
Http://192.168.101.3'ü ziyaret etmek, "html3" dizini altındaki html sayfasını ziyaret edecek
Http://192.168.101.103'ü ziyaret etmek, "html103" dizini altındaki html sayfasını ziyaret edecek
2. Ortamı hazırlayın
Yerel bilgisayarın ve sanal ağın sorunsuz olmasını sağlamak için bir 192.168.101.3 sanal makine oluşturun.
192.168.101.3'e nginx'i kurun.
3.html dizini oluşturma
Orijinal nginx html dizinini "html3" ve "html103" olmak üzere iki dizine kopyalayın. Testi kolaylaştırmak için, her dizindeki index.html içeriğini kişiselleştirmek için değiştirmeniz gerekir.
cd / usr / local / nginx
cp -r html html3
cp -r html html103
4. Birden çok ip bağlama
Birinci yöntem:
LP takma adları eklemek için standart ağ yapılandırma araçlarını (ifconfig ve yönlendirme komutları gibi) kullanın:
Mevcut ip yapılandırma durumu:
Eth0 ağ kartına başka bir ip bağlayın: 192.168.101.103
/ sbin / ifconfig eth0: 1192.168.101.103 yayın 192.168.101.255 netmask 255.255.255.0 yukarı
/ sbin / yol ekle-ana bilgisayar 192.168.101.103 dev eth0: 1
Yöntem 2: (önerilir)
1. / etc / sysconfig / network-scripts / ifcfg-eth0 dosyasını kopyalayın ve ifcfg-eth0: 1 olarak adlandırın
İçeriği değiştirin:
CİHAZ = eth0: 1
IPADDR = 192.168.25.103
Diğer öğeleri değiştirmeye gerek yok
2. Sistemi yeniden başlatın
5. Sanal konağı yapılandırın
/Usr/local/nginx/conf/nginx.conf dosyasını değiştirin ve aşağıdaki gibi iki sanal ana bilgisayar ekleyin:
# kullanıcı kimse; işçi_işlemleri 1; Etkinlikler { worker_connections 1024; } http { mime.types içerir; default_type uygulaması / sekizli akışı; dosya gönder; keepalive_timeout 65; #Configure sanal ana bilgisayar 192.168.101.3 server { # IP ve bağlantı noktasını dinleme, 192.168.101.3:80 yapılandırın 80 dinle; #Sanal ana bilgisayar adı ip adresini buradan yapılandırın sunucu_adı 192.168.101.3; # Tüm istekler / ile başlar, tüm istekler bu konumla eşleşebilir yer / { # Web sayfası depolama dizini olan sanal ana bilgisayar dizinini belirtmek için kök komutunu kullanın # Örneğin, http: //ip/test.html adresini ziyaret ettiğinizde /usr/local/html3/test.html bulunur # Örneğin, http: //ip/item/test.html adresini ziyaret ettiğinizde /usr/local/html3/item/test.html bulunur kök / usr / local / nginx / html3; # Karşılama sayfasını belirtin, soldan sağa doğru arama yapın index index.html index.htm; } } #Configure virtual host 192.168.101.103 server { 80 dinle; sunucu_adı 192.168.101.103; yer / { kök / usr / local / nginx / html103; index index.html index.htm; } } }6. Test
Http://192.168.101.3 adresini ziyaret edin.
Http://192.168.101.103 adresini ziyaret edin
2. Bağlantı noktası tabanlı sanal barındırma
1. Talep
Nginx, 80 ve 8080 olmak üzere iki bağlantı noktasında harici izleme hizmetleri sağlar.
Html80 dizininde html istemek için bağlantı noktası 80'i isteyin
8080 bağlantı noktası isteyin, ardından html8080 dizini altında html isteyin
2. Ortamı hazırlayın
Yerel bilgisayarın ve sanal ağın sorunsuz olmasını sağlamak için bir 192.168.101.3 sanal makine oluşturun.
192.168.101.3'e nginx'i kurun.
3.html dizini oluşturma
Orijinal nginx html dizinini "html80" ve "html8080" adlı iki dizine kopyalayın. Testi kolaylaştırmak için, her dizindeki index.html içeriğini kişiselleştirmek için değiştirmeniz gerekir.
4. Sanal konağı yapılandırın
/Usr/local/nginx/conf/nginx.conf dosyasını değiştirin ve aşağıdaki gibi iki sanal ana bilgisayar ekleyin:
# kullanıcı kimse; işçi_işlemleri 1; Etkinlikler { worker_connections 1024; } http { mime.types içerir; default_type uygulaması / sekizli akışı; dosya gönder; keepalive_timeout 65; #Configure virtual host server { # IP ve bağlantı noktasını dinleme, 80'i yapılandırın 80 dinle; #Sanal ana bilgisayar adı ip adresini buradan yapılandırın sunucu_adı 192.168.101.3; # Tüm istekler / ile başlar, tüm istekler bu konumla eşleşebilir yer / { # Web sayfası depolama dizini olan sanal ana bilgisayar dizinini belirtmek için kök komutunu kullanın # Örneğin, http: //ip/test.html adresini ziyaret ettiğinizde /usr/local/html3/test.html bulunur # Örneğin, http: //ip/item/test.html adresini ziyaret ettiğinizde /usr/local/html3/item/test.html bulunur kök / usr / local / nginx / html80; # Karşılama sayfasını belirtin, soldan sağa doğru arama yapın index index.html index.htm; } } #Configure virtual host server { 8080 dinle; sunucu_adı 192.168.101.3; yer / { kök / usr / local / nginx / html8080; index index.html index.htm; } }5. Test
Http://192.168.101.3 adresini ziyaret edin.
Http://192.168.101.3:8080 adresini ziyaret edin
3. Etki alanı adına dayalı sanal ana bilgisayar yapılandırması
1. Talep
İki alan adı aynı nginx sunucusunu işaret eder ve kullanıcılar farklı web içeriğini görüntülemek için farklı alan adlarını ziyaret eder.
İki alan adı aaa.test.com ve bbb.test.com'dur.
nginx sunucusu, 192.168.101.3 sanal makineyi kullanır
2. Ortamı hazırlayın
Yerel bilgisayarın ve sanal ağın sorunsuz olmasını sağlamak için bir 192.168.101.3 sanal makine oluşturun.
192.168.101.3'e nginx'i kurun.
192.168.101.3 sanal makineye karşılık gelen aaa.test.com ve bbb.test.com'u ana bilgisayar dosyası aracılığıyla belirtin:
Windows ana bilgisayar dosyasını değiştirin: (C: \ Windows \ System32 \ drivers \ etc)
3.html dizini oluşturma
192.168.101.3'te / usr / local / aaa_html oluştur, bu dizin aaa.test.com etki alanı adıyla erişilen dizindir
192.168.101.3'te / usr / local / bbb_html oluştur, bu dizin bbb.test.com etki alanı adıyla erişilen dizindir.
Dizindeki içerik nginx ile birlikte gelen html dosyasını kullanır, / usr / local / nginx / html'deki içeriği yukarıdaki iki dizine kopyalayın ve aaa_html dizinindeki index.html içeriğini şu şekilde değiştirin: "Hoş Geldiniz aaa nginx! "
Bbb_html dizinindeki index.html içeriğini "bbb nginx'e hoş geldiniz!" Olarak değiştirin.
4. Sanal konağı yapılandırın
/Usr/local/nginx/conf/nginx.conf dosyasını değiştirin ve aşağıdaki gibi iki sanal ana bilgisayar ekleyin:
#Configure sanal ana bilgisayar aaa.test.com server { # İp ve bağlantı noktasını dinleme, yerel ip ve bağlantı noktasını yapılandırma 192.168.101.3:80 dinle; #Sanal ana bilgisayar adı aaa.test.com, istenen alan adının aaa.test.com URL'si bu sunucu yapılandırmasıyla çözülecektir sunucu_adı aaa.test.com; # Tüm istekler / ile başlar, tüm istekler bu konumla eşleşebilir yer / { # Web sayfası depolama dizini olan sanal ana bilgisayar dizinini belirtmek için kök komutunu kullanın # Örneğin, http: //ip/test.html adresini ziyaret ettiğinizde /usr/local/aaa_html/test.html bulunur # Örneğin, http: //ip/item/test.html adresini ziyaret ettiğinizde /usr/local/aaa_html/item/test.html bulunur root / usr / local / aaa_html; # Karşılama sayfasını belirtin, soldan sağa doğru arama yapın index index.html index.htm; } } #Configure sanal ana bilgisayar bbb.test.com server { 192.168.101.3:80 dinle; sunucu_adı bbb.test.com; yer / { root / usr / local / bbb_html; index index.html index.htm; } }5. Test
Aaa.test.com, bbb.test.com adresini ziyaret edin