Eşzamansız olması, sunucuyu yavaşlatmadan milyonlarca kullanıcıyı idare edebilme yeteneği, onu sistemlerini dağıtmak için birçok kuruluşta bir numaralı tercih haline getirir. Bu kılavuz, Nginx web sunucularının kolaylıkla nasıl kurulacağını ve yapılandırılacağını gösterir. Kılavuz Ubuntu 18'i kullanıyor.04, LTS olduğu için sürüm olarak; dolayısıyla bir üretim ortamında gerekli olan uzun vadeli bir desteğe sahiptir. Bir Nginx web sunucusunu kurmak ve yapılandırmak nispeten kolaydır, ancak birkaç adım içerir.
Kurulum
Bu talimatlar Ubuntu 18 için yazılmıştır.04 LTS sürümü ve bu nedenle aynı komutlar orada da çalışmadıkça farklı bir Linux çeşidinde kullanılmamalıdır. Güvenlik riskini azaltmak için Nginx'i sudo iznine sahip normal bir kullanıcı hesabına yüklemeniz önerilir. Ancak, bu makale, kapsamı dışında olduğu için bir kullanıcı hesabının nasıl oluşturulacağını göstermemektedir.
- Nginx'i kurmadan önce yerel paket bilgilerini güncelleyin, ardından aşağıdaki komutlarla paketleri güncelleyin. Nginx yükleme komutu kullanıldığında depodan (sunucu) Nginx'in en son sürümünün alınmasını sağlar. Dist-upgrade komutu, farklı paketler arasındaki uyumsuzluk sorunlarını önlemek için bağımlılıkları akıllıca yönetir.
- Nginx'i aşağıdaki komutla yükleyin
- Kurulum sadece 3 ana komutun kullanılmasını gerektirir, ardından sunucuya Nginx kurulur. Bu kılavuzda Nginx bir web sunucusu olarak kullanıldığından, dizin.html, Nginx kurulur kurulmaz oluşturulur ve sunucunun harici IP adresi üzerinden erişilebilir.
http://IPAdresi
- Yüklenmiş olsa bile, sunucunun herhangi bir nedenle yeniden başlatılması durumunda Nginx hizmetinin otomatik olarak kendi kendine başladığından emin olmak önemlidir. Aşağıdaki gibi yapılabilir.
- Dosya sistemi izinlerini ayarlamak için aşağıdaki iki komutu kullanın. İlk komut, şu anda oturum açmış olan kullanıcının adını dosyanın iznine atar. Kökse, köktür, özel bir adsa, adı. İkinci komutla dosyanın izni belirlenir. “Tüm kullanıcılar” için izin R olarak ayarlandığından, dosya herkes tarafından okunabilir, bu da herkese açık dosyalar için önerilir. Dosya sahibinin dosyada değişiklik yapması için gerekli olan yazma izni için W standartları ve WordPress panosu gibi sunucudayken bir dosya bir komut dosyası aracılığıyla değiştirildiğinde kullanışlı olur.
sudo chmod -R 755 /var/www/örnek.com
Yapılandırma
Nginx'i kurmak yukarıda açıklandığı gibi basittir, ancak yapılandırma daha fazla çaba gerektirir ve ayrıca sunucunun gereksinimlerine ve ortamına da bağlıdır. Bu kılavuz, bir etki alanı için bir nginx web sunucusunun nasıl yapılandırılacağını, temel ayarların nasıl ayarlanacağını, Google tarafından web sitesinin sıralamasını iyileştirmek için gerekli olan SSL/TLS'nin nasıl kurulacağını ve son olarak hangi komutların ayarlanması gerektiğini gösterir. bir Nginx sunucusu kurmak.
- Nginx varsayılan dosyasını nano düzenleyici aracılığıyla açmak için aşağıdaki komutu kullanın. Varsayılan dosya, Nginx ilk kurulduğunda otomatik olarak oluşturulur ve bir web sunucusunun yapılandırmasını tanımlar. Bu yapılandırma, bir etki alanı adına ayrılmış bir sunucu bloğu içerir ve sınırları içindeki kurallara göre etki alanına gelen istekleri işler. Nano düzenleyici, metin dosyalarını kolaylıkla açmaya yardımcı olan bir konsol düzenleyicisidir. Konsol metin düzenleyicisine kıyasla oldukça kullanıcı dostu olduğundan, NppFTP uzantılı Notepad++ gibi daha iyi bir düzenleyici kullanmanız şiddetle tavsiye edilir.
Yapılandırma dosyası, aşağıdaki kod parçacığında görüldüğü gibi birkaç önemli satır içerir.
- Listen yönergesi, dinlenecek IP adresinin port numarasını belirtir. Bağlantı şifreli web sunucuları için 443 ve şifrelenmemiş web sunucuları için 80'dir. Default_server, onu tüm sunucu bloklarından varsayılan sunucu yapar, yani bu sunucu bloğu, isteğin başlık alanı belirtilen sunucu adlarından herhangi biriyle eşleşmezse yürütülür. Ana bilgisayar adından bağımsız olarak sunucuya gelen tüm istekleri yakalamak yararlıdır (bu durumda etki alanı anlamına gelir).
- Sunucu_adı, ana bilgisayar adını, genellikle alan adını belirtir. Alan adının hem çıplak hem de www tatlarını kullanmanız önerilir, örneğin…
- Kök yönergesi, web sayfalarının dosya sunucusunda nerede bulunduğunu belirtir, örneğin Dizin.html ve bir web sitesinin diğer tüm alt klasörleri. Yönerge sadece web sitesinin kök klasörünün yolunu gerektirir, gerisi buna göre alınır.
- Dizin yönergesi, dizin dosyasının adını belirtir; bu, ana bilgisayar adı web tarayıcısının adres çubuğuna girildiğinde açılan dosya anlamına gelir.
- Konum bloğu, örneğin google gibi ana bilgisayar adı altındaki yönergeleri işlemek için kullanışlıdır.com/resimler, /videolar. /, alan adının kök yönergesini yakalar. try_files yönergesi, içeriği (dosya, klasör) sunmaya çalışır veya kaynak mevcut değilse bulunamadı mesajını atar. /videos dizininin işlenmesi gerekiyorsa, konumu /videoları kullanın.
80 default_server'ı dinle;
dinle [::]:80 default_server;
sunucu adı _;
kök /var/www/html/;
indeks indeksi.php dizini.html dizini.hm;
yer /
try_files $uri $uri/ =404;
- İlk başta yapılandırıldıktan sonra sunucuyu yeniden başlatmanız önerilir. Nginx hizmetini yeniden başlatarak, yapılandırma dosyasını da yeniden yükleyin. Konfigürasyon dosyasında basit bir değişiklik yapıldıysa, bağlantının sunucuya düşmesini önlemek için yeniden başlatmak yerine yeniden yükleme kullanmak da yeterlidir.
- Günümüzde web sitesinin Google dizinindeki sıralamasını yükseltmek için web sitesine olan bağlantıyı şifrelemek önemlidir. Web sunucusunda SSL/TLS sertifikası uygulanarak şifreleme yapılabilir. Piyasada hem ücretli hem de ücretsiz çok sayıda sertifika bulunmaktadır, ancak bu kılavuzda let's encrypt olarak bilinen ücretsiz bir sertifika kullanılmaktadır. Ücretsizdir ancak ticari sertifikalarda bir yıla kıyasla 3 ayda bir sertifikayı yenilemek gerekir. Aşağıdaki komut sisteme certbot PPA (kişisel paket arşivi) ekler. Bu PPA'lar başlatma panelinde barındırılıyor.net ve apt-get kullanıldığında anında sisteme indirilirler.
- Aşağıdaki komut, nginx için certbot lezzetini indirir ve yükler. Yukarıda belirtildiği gibi, launchpad'den indirilir.ağ.
- Yüklendikten sonra, belirtilen alan adı ve www çeşidi için SSL/TLS'yi etkinleştirmek için aşağıdaki komutu kullanın. Bu, yukarıda belirtilen adımlarda yapılandırılmış alanla aynı olmalıdır. Etki alanı yapılandırılmamışsa, bu adımdan önce yapıldığından emin olun.
-d www.alan adı.uzantı
- SSL/TLS yukarıdaki gibi kurulduğunda, değişikliklerin geçerli olması için sunucuyu yeniden başlatın.
- SSL/TLS yapılandırmasını belirli bir gereksinim için değiştirdiğinden, aşağıdaki web sitesinde belirtilen yapılandırmanın kullanılması da önerilir. Aşağıdaki web sitesindeki önemli seçenekler modern, orta ve eskidir. Modern seçenek, bağlantıyı son derece güvenli hale getirir, ancak uyumluluk pahasına ve bu nedenle site, eski tarayıcılara yüklenmeyecektir. Ara seçenek hem uyumluluğu hem de güvenliği dengeler ve bu nedenle çoğu web sitesi için önerilir. Eski tip eski sistemler içindir. Üretim siteleri için önerilmez, ancak siteyi Internet Explorer 5 gibi eski web tarayıcılarından ziyaret ettiklerinde kullanıcıları uyarmak için önerilir.
https://ssl-config.mozilla.kuruluş/
Sonuç
Nginx bir proxy sunucusu, ters proxy sunucusu ve yük dengeleyicidir ve yüksek performansı nedeniyle işletmelerde genellikle web hizmetlerini sunmak için kullanılır. Bu kılavuz, bir Nginx sunucusunun bir Ubuntu sunucusunda ilk kez kolaylıkla nasıl kurulacağını ve yapılandırılacağını öğretir. Tüm komutlar katmanın altındaki karmaşık görevleri soyutladığından, yükleme ve yapılandırma o kadar zor değildir. Sonuç olarak, işletme, Nginx'in sunmadığı farklı bir gereksinim beklemiyorsa, Nginx'i kullanmamak için hiçbir neden yoktur.