26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
HTTP / 2 , 1999'da standartlaştırılmış olan artık kullanılmayan HTTP / 1.1 protokolünün yeni sürümüdür. O zamandan beri web'de çok şey değişti. Uygulamalarımız geri döndüklerinden daha karmaşıktır, bu nedenle bununla başa çıkmak için altta yatan taşıma protokolünde değişiklik gerekliydi. HTTP / 2 ileilgili en önemli şey, web sayfanızı son kullanıcılar için daha hızlı hale getirmesidir.
Kısaca HTTP / 2 5 temel özellik ekler :
Tüm bu özellikleri açıklamak bu öğreticinin kapsamı dışındadır, ancak bu konuyu daha derinlemesine incelemek istiyorsanız Yüksek Performanslı Tarayıcı Ağı kitabından alıntı önerebilirim - HTTP / 2 alıntısı .
Bu kılavuzda, Ubuntu 16.04 (Xenial) üzerine Nginx'in en son kararlı sürümünü kuracağız, kendinden imzalı SSL Sertifikası oluşturacağız, Nginx'te HTTP / 2 protokolünü etkinleştireceğiz ve elinks
HTTP istemcisi olarak çalışmak için metin tabanlı tarayıcı kuracağız .
Nginx'in en son kararlı sürümünü kurmak için birkaç komut vermeliyiz:
Paketleri ve depoları imzalamak için kullanılan Nginx genel PGP anahtarını indirmeli ve depodan indirilen paketlerin gerçekliğini doğrulamak için paket yöneticisi tarafından kullanılan anahtarlığa eklemeliyiz.
wget https://nginx.org/keys/nginx_signing.key && apt-key add nginx_signing.key
PGP anahtarını dosya sisteminden silin:
rm nginx_signing.key
Yeni havuz ekle
printf "deb http://nginx.org/packages/ubuntu/ xenial nginx \ndeb-src http://nginx.org/packages/ubuntu/ xenial nginx \n" >> /etc/apt/sources.list.d/nginx.list
Paket listenizi güncelleyin ve Nginx'i yükleyin:
apt update && apt install nginx -y
Nginx sürümünü doğrulamak için aşağıdakileri kullanabiliriz:
nginx -v
# nginx version: nginx/1.10.1
Her şey yolunda giderse 1.10.x
, nginx -v
komutu çalıştırırken çıktıda olduğu gibi bir desen görmelisiniz .
Her ne kadar HTTP / 2 spec tarayıcıları TLS üzerinden HTTP / 2 kullanmaya zorlamasa da , tüm büyük tarayıcılar sadece HTTP / 2'yi TLS üzerinden uygulamaya karar verdiler , ancak TLS sürümü değil, sadece TLS 1.2 veya üstü.
Kurgusal example.com
alan için kendinden imzalı sertifikalar oluşturacağız , üretim için geçerli alan adına ihtiyacınız var ve güvenilir CA kullanmalısınız.
Özel anahtar oluştur:
openssl genrsa -aes128 -out example.com.key 2048
Bu komutu çalıştırdıktan sonra 2 kez parola girmeniz gerekir. Parolalar sinir bozucu olduğu için onu kaldıracağız.
Parolayı özel anahtardan kaldır:
openssl rsa -in example.com.key -out example.com.key
Sertifika İmzalama İsteği (CSR) oluşturun:
openssl req -new -sha256 -key example.com.key -out cert-request.csr
Tek etki alanı sertifikası oluşturuyoruz, bu nedenle ortak ad alanını
example.com
etki alanına eşit olarak ayarlamamız gerekiyor
Sertifika oluştur:
openssl x509 -req -days 365 -in cert-request.csr -signkey example.com.key -out example.com.crt
Sertifikayı ve özel anahtarı sıralayın:
mkdir -p /etc/ssl/testing/private && mkdir /etc/ssl/testing/certs
mv example.com.key /etc/ssl/testing/private && mv example.com.crt /etc/ssl/testing/certs
Nginx sanal ana bilgisayar dizinleri oluşturma
mkdir /etc/nginx/sites-available && mkdir /etc/nginx/sites-enabled
Sonra çalıştırın nano /etc/nginx/nginx.conf
ve bir yönerge bulun include /etc/nginx/conf.d/*.conf;
. Bu yönerge altına include /etc/nginx/sites-enabled/*;
Save ( CTRL + O ) ekleyin ve çıkın ( CTRL + X ).
##
# Virtual Hosts
##
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
Bu komutla dizin example.com.conf
içinde adlandırılan bir dosya oluşturun ve aşağıdaki kodu kopyalayın / yapıştırın:/etc/nginx/sites-available
nano /etc/nginx/sites-available/example.com.conf
server {
listen 80;
listen [::]:80;
server_name example.com;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com;
root /var/www/html;
index index.nginx-debian.html;
ssl_certificate /etc/ssl/testing/certs/example.com.crt;
ssl_certificate_key /etc/ssl/testing/private/example.com.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_prefer_server_ciphers on;
}
Tebrikler, artık HTTP / 2 özellikli web sunucunuz var. HTTPS sanal ana makinesi içindeki yönerge http2
parametresi eklendiğinde listen
size HTTP / 2 desteği verilecektir .
/etc/nginx/sites-available/example.com.conf
Bu komutla sembolik bir bağlantı oluşturun :
ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled
Yapılandırma sözdizimini test et
nginx -t
Değişikliklerinizi uygulamak için Nginx'i yeniden başlatın:
systemctl restart nginx
Dosyaya example.com
alan ekle/etc/hosts
echo '127.0.0.1 example.com' >> /etc/hosts
Sanal ana makinenizi test etmek için metin tabanlı tarayıcıya ihtiyacımız var - elinks.
Elinks'i kurmak için aşağıdaki komutu kullanın:
apt install elinks
example.com
Sanal ana bilgisayar çalışmanızı test etmek için :
elinks https://example.com
Elinks tarayıcısından çıkmak için klavyenizdeki q tuşuna ve ardından Enter tuşuna basın .
Sunucunun hangi protokolleri tanıdığını en kolay şekilde görmek openssl
araç setini kullanmaktır .
openssl s_client -connect example.com:443 -nextprotoneg ''
Bu komutun çıktısında şöyle bir şey görmelisiniz:
CONNECTED(00000003)
Protocols advertised by server: h2, http/1.1
HTTP / 2'nin nasıl çalıştığını görmek için tarayıcı geliştirici araçlarını kullanabilirsiniz. HTTP / 2 protokolü ya h2
da HTTP/2.0
tanımlayıcılarla belirtilir. Geliştirici araçlarında ağ panelini açın ve sayfanızı yenileyin.
Şimdi Nginx yapılandırmasında HTTP / 2'yi etkinleştirmenin "kolay" olduğunun farkında olmalısınız , ancak bu genel resmin tamamı değildir. Öncelikle, güçlü şifre paketleriyle sunucunuzda TLS / SSL'yi etkinleştirmeyi düşünmeli ve kara listeye alınan şifreleri kullanmadığınızdan emin olmalısınız . Yalnızca sunucunuzda güçlü TLS / SSL'yi etkinleştirdikten sonra, HTTP / 2'yi etkinleştirmeyi düşünmeye başlayabilirsiniz .
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun