medyauzmani.com
Nginx’i çift yığın modunda çalıştırın | her şeyi blogla – Gündem Haberleri

Nginx’i çift yığın modunda çalıştırın | her şeyi blogla

Nginx’i çift yığın modunda çalıştırın

IPv6’ya geçiş oldukça yavaş ilerliyor olsa da (Almanya’daki IPv6 trafiği %1’den az), geleceğe şimdiden hazırlanmalısınız. Kendi IPv6 adresinize bağlanmanıza izin veriliyorsa, bilinen bir IPv4 adresine ek olarak bir IPv6 adresi aracılığıyla bir ana bilgisayara erişilebildiği çift yığın işlemi olarak adlandırılan işlemi çalıştırabilirsiniz. Nginx’i bir web sunucusu olarak kullanıyorsanız, bunun yapılandırması çok basittir. Ama önce dosyanın kullanılıp kullanılmadığını kontrol etmelisiniz. NginxSürüm, IPv6’yı tamamen işleyebilir:

$ nginx -V
nginx version: nginx/1.1.19
TLS SNI support enabled
configure arguments: [...] --with-ipv6 [...]

Switch config argümanlarında ise --with-ipv6 İkili yığının önünde hiçbir şey duramaz. Şimdi, ana bilgisayarın (veya ad tabanlı sanal barındırma durumunda birincil ana bilgisayarın) Nginx yapılandırmasında, aşağıdaki menü seçenekleri ayarlanmalıdır. Bu yapılandırma dosyası genellikle aşağıda sembolik bir bağlantı olarak bulunabilir. /etc/nginx/sites-enabled/default.

server {
	listen [::]:80 ipv6only=on;
	listen 80;

	server_name example.org localhost 127.0.0.1;

	[...]
}

Emin olmak Nginx Tüm ağ arabirimlerinde 80 numaralı bağlantı noktasından gelen IPv6 ve IPv4 bağlantılarını dinler. Teoride, ilk satırda seçenek yok ipv6only=on Yeterli. Ancak, testte bazı sorunlar ortaya çıktı, böylece daha iyi bir konumda. Bu seçenek olmadan, IPv6’ya bağlanma aynı zamanda IPv4’ü de bağlayacak ve aşağıdaki satıra neden olacaktır (örn. listen 80) yalnızca gereksiz olmakla kalmayacak, aynı zamanda çalışmayacaktır (elbette, liman zaten ilk seçeneğe bağlı ve bu nedenle “meşgul”). Nginx, aşağıdaki hata mesajıyla başlamayabilir:

Restarting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
nginx.

Bu nedenle, aracılığıyla ipv6only=on Bağlamanın yalnızca IPv6’da yapılması gerektiğini gösterin. Sonra bir sonraki satır açıkça IPv4 ile ilgilidir.

Aynısı artık bir SSL ana bilgisayarı için de yapılabilir:

server {
	listen [::]:443 ipv6only=on;
	listen 443;

	server_name example.org localhost 127.0.0.1;

	[...]
}

Başka sanal ana bilgisayarlar varsa, onlara aynı şekilde ikili yığın modu atanabilir. Ancak, bu seçeneğin dikkate alınması önemlidir. ipv6only=on Artık bunlara atanması gerekmiyor veya atanmayabilir.

Son olarak, Nginx sunucusu yeniden başlatılabilir:

$ /etc/init.d/nginx restart

veya Ubuntu’da

$ service nginx restart

Nisan 2007’de bu blogu başlattım ve o zamandan beri nadiren ilginç konularda yazıyorum. Şu anda Chemnitz Teknoloji Üniversitesi’nde veri ve web mühendisliği alanında yüksek lisans okuyorum. Profillerimi Twitter, Google+ ve XING’de ziyaret ederseniz sevinirim.

Diğer gönderilerimize göz at

[wpcin-random-posts]

Yorum yapın