Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
NGINX dapat digunakan sebagai pelayan HTTP / HTTPS, pelayan proksi terbalik, pelayan proksi surat, penyeimbang beban, penghentian TLS, atau pelayan caching. Reka bentuknya agak modular. Ia mempunyai modul asli dan modul pihak ketiga yang dibuat oleh komuniti. Ditulis dalam bahasa pengaturcaraan C, ia adalah perisian yang sangat pantas dan ringan.
CATATAN : NGINX mempunyai dua aliran versi yang berjalan secara selari - stabil dan utama . Kedua-dua versi boleh digunakan pada pelayan pengeluaran. Sebaiknya gunakan versi utama dalam pengeluaran.
Memasang NGINX dari kod sumber agak "mudah" - muat turun versi terkini kod sumber NGINX, konfigurasikan, bina dan pasangnya.
Dalam tutorial ini saya akan menggunakan versi utama , iaitu 1.13.1 pada masa penulisan. Kemas kini nombor versi dengan sewajarnya apabila versi yang lebih baru tersedia.
Keperluan mandatori:
Keperluan pilihan:
Tukar ke pengguna baru:
su - <username>
Kemas kini sistem:
sudo apt update && sudo apt upgrade -y
NGINX adalah program yang ditulis dalam C, jadi kita perlu memasang penyusun C (GCC).
sudo apt install build-essential -y
Muat turun kod sumber NGINX versi terkini dan ekstraknya:
wget https://nginx.org/download/nginx-1.13.1.tar.gz && tar zxvf nginx-1.13.1.tar.gz
Muat turun kod sumber kebergantungan NGINX dan ekstraknya:
NGINX bergantung pada 3 perpustakaan: PCRE , zlib dan OpenSSL :
# PCRE version 4.4 - 8.40
wget https://ftp.pcre.org/pub/pcre/pcre-8.40.tar.gz && tar xzvf pcre-8.40.tar.gz
# zlib version 1.1.3 - 1.2.11
wget http://www.zlib.net/zlib-1.2.11.tar.gz && tar xzvf zlib-1.2.11.tar.gz
# OpenSSL version 1.0.2 - 1.1.0
wget https://www.openssl.org/source/openssl-1.1.0f.tar.gz && tar xzvf openssl-1.1.0f.tar.gz
Keluarkan semua .tar.gz
fail. Kami tidak memerlukannya lagi:
rm -rf *.tar.gz
Pergi ke direktori sumber NGINX:
cd ~/nginx-1.13.1
Untuk mendapatkan bantuan, anda boleh menyenaraikan suis konfigurasi yang tersedia dengan menjalankan:
./configure --help
Konfigurasikan, kompilasi, dan pasang NGINX:
./configure --prefix=/usr/share/nginx \
--sbin-path=/usr/sbin/nginx \
--modules-path=/usr/lib/nginx/modules \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/run/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=www-data \
--group=www-data \
--build=Ubuntu \
--http-client-body-temp-path=/var/lib/nginx/body \
--http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
--http-proxy-temp-path=/var/lib/nginx/proxy \
--http-scgi-temp-path=/var/lib/nginx/scgi \
--http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
--with-openssl=../openssl-1.1.0f \
--with-openssl-opt=enable-ec_nistp_64_gcc_128 \
--with-openssl-opt=no-nextprotoneg \
--with-openssl-opt=no-weak-ssl-ciphers \
--with-openssl-opt=no-ssl3 \
--with-pcre=../pcre-8.40 \
--with-pcre-jit \
--with-zlib=../zlib-1.2.11 \
--with-compat \
--with-file-aio \
--with-threads \
--with-http_addition_module \
--with-http_auth_request_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_mp4_module \
--with-http_random_index_module \
--with-http_realip_module \
--with-http_slice_module \
--with-http_ssl_module \
--with-http_sub_module \
--with-http_stub_status_module \
--with-http_v2_module \
--with-http_secure_link_module \
--with-mail \
--with-mail_ssl_module \
--with-stream \
--with-stream_realip_module \
--with-stream_ssl_module \
--with-stream_ssl_preread_module \
--with-debug \
--with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' \
--with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now'
make
sudo make install
Keluarkan semua fail yang dimuat turun dari direktori utama, dalam kes ini /home/username
:
cd ~
rm -r nginx-1.13.1/ openssl-1.1.0f/ pcre-8.40/ zlib-1.2.11/
Periksa versi NGINX dan susun pilihan masa:
sudo nginx -v && sudo nginx -V
# nginx version: nginx/1.13.0 (Ubuntu)
# built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
# built with OpenSSL 1.1.0f 25 May 2017
# TLS SNI support enabled
# configure arguments: --prefix=/etc/nginx . . .
# . . .
# . . .
Periksa sintaks dan kemungkinan kesalahan:
sudo nginx -t
# Will throw this error nginx: [emerg] mkdir() "/var/lib/nginx/body" failed (2: No such file or directory)
# Just create directory
mkdir -p /var/lib/nginx && sudo nginx -t
Buat fail unit systemd untuk NGINX:
sudo vim /etc/systemd/system/nginx.service
Salin / tampal kandungan berikut:
CATATAN : Lokasi fail PID dan binari NGINX mungkin berbeza bergantung pada bagaimana NGINX disusun.
[Unit]
Description=A high performance web server and a reverse proxy server
After=network.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -q -g 'daemon on; master_process on;'
ExecStart=/usr/sbin/nginx -g 'daemon on; master_process on;'
ExecReload=/usr/sbin/nginx -g 'daemon on; master_process on;' -s reload
ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid
TimeoutStopSec=5
KillMode=mixed
[Install]
WantedBy=multi-user.target
Mulakan dan aktifkan perkhidmatan NGINX:
sudo systemctl start nginx.service && sudo systemctl enable nginx.service
Periksa sama ada NGINX akan dimulakan selepas but semula:
sudo systemctl is-enabled nginx.service
# enabled
Periksa sama ada NGINX sedang berjalan:
sudo systemctl status nginx.service
ps aux | grep nginx
curl -I 127.0.0.1
Nyalakan semula Ubuntu VPS anda untuk mengesahkan bahawa NGINX dimulakan secara automatik:
sudo shutdown -r now
Buat profil aplikasi UFW NGINX:
sudo vim /etc/ufw/applications.d/nginx
Salin / tampal kandungan berikut:
[Nginx HTTP]
title=Web Server (Nginx, HTTP)
description=Small, but very powerful and efficient web server
ports=80/tcp
[Nginx HTTPS]
title=Web Server (Nginx, HTTPS)
description=Small, but very powerful and efficient web server
ports=443/tcp
[Nginx Full]
title=Web Server (Nginx, HTTP + HTTPS)
description=Small, but very powerful and efficient web server
ports=80,443/tcp
Sekarang, sahkan bahawa profil aplikasi UFW dibuat dan dikenali:
sudo ufw app list
# Available applications:
# Nginx Full
# Nginx HTTP
# Nginx HTTPS
# OpenSSH
Itu sahaja. Anda kini memasang versi terbaru NGINX. Ia disusun secara statik terhadap beberapa perpustakaan penting seperti OpenSSL. Selalunya, versi OpenSSL sistem sudah ketinggalan zaman. Dengan menggunakan kaedah pemasangan ini dengan OpenSSL versi yang lebih baru, anda dapat memanfaatkan cipher baru CHACHA20_POLY1305
dan protokol seperti TLS 1.3 yang akan tersedia di OpenSSL 1.1.1
(yang belum dilepaskan).
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.
Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.
Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.
Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.
CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?
Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.
Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!
Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.
Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut