Bagaimana untuk menaik taraf nginx untuk menyokong HTTP2.0
1. Prakata
# ssl写在443端口后面。这样http和https的链接都可以用 listen 443 ssl http2 default_server; server_name chat.chengxinsong.cn; # hsts的合理使用,max-age表明hsts在浏览器中的缓存时间,includesubdomainscam参数指定应该在所有子域上启用hsts,preload参数表示预加载,通过strict-transport-security: max-age=0将缓存设置为0可以撤销hsts add_header strict-transport-security "max-age=63072000; includesubdomains; preload"; ssl_certificate /usr/local/nginx/cert/2540136_chat.chengxinsong.cn.pem; ssl_certificate_key /usr/local/nginx/cert/2540136_chat.chengxinsong.cn.key; # 分配20mb的共享内存缓存,不同工作进程共享tls会话信息 # ssl_session_cache shared:ssl:20m; # 设置会话缓存过期时间1h ssl_session_timeout 60m; # tls协议的合理配置 # 指定tls协议的版本,不安全的ssl2和ssl3要废弃掉 ssl_protocols tlsv1 tlsv1.1 tlsv1.2; # 启用ssl_prefer_server_ciphers,用来告诉nginx在tls握手时启用服务器算法优先,由服务器选择适配算法而不是客户端 ssl_prefer_server_ciphers on; # 优先选择支持前向加密的算法,且按照性能的优先顺序排列 ssl_ciphers ecdhe-rsa-aes128-gcm-sha256:ecdhe:ecdh:aes:high:!null:!anull:!md5:!adh:!rc4; # 会话恢复的合理使用 # 配置会话票证,减少了tls握手的开销 ssl_session_tickets on;
Kemudian laksanakan konfigurasi cek nginx. nginx -t
bermakna http2.0 kekurangan ngx_http_v2_module. nginx tidak mempunyai modul http_ssl_module Cuma bawa konfigurasi --with-http_ssl_module semasa menyusun dan memasang.
2. Cari maklumat untuk mencari sebabnya
Sebab di atas ialah nginx telah menggantikan ngx_http_spdy_module dengan modul http_v2_module sejak 1.9.5, dan secara rasmi mula untuk menyokong protokol http2.
Tetapi nginx saya ialah 1.12.2. Ia tidak sepatutnya menjadi masalah dengan versi ngin
Nota:
1 Dan versi perpustakaan openssl perlu disusun pada 1.0.2 atau lebih tinggi . 1. Untuk mendayakan sokongan protokol http/2, anda perlu menyusun nginx 1.10 atau lebih tinggi dan perpustakaan openssl versi 1.0.2 atau lebih tinggi.
2.http2.0 hanya menyokong tapak web dengan https didayakan.
Ia mungkin versi perpustakaan openssl pelayan, yang didapati 1.0.2.
Jadi anda masih perlu menaik taraf ke tahap yang lebih tinggi.
3. Naik taraf openssl
Dalam protokol http2.0, ia melibatkan sokongan alpn (perundingan protokol lapisan aplikasi, rundingan protokol lapisan aplikasi pada masa ini, semua arus perdana Pustaka openssl terbina dalam dalam sistem pelayan unix semuanya lebih rendah daripada versi 1.0.2. Dengan menggunakan alat baris arahan openssl, anda boleh menyemak sama ada perkhidmatan http2 semasa menyokong alpn.
Cari direktori pemasangan
1 Muat turun versi terkini pustaka openssl, susun dan pasang
wget https://www.openssl.org/source/openssl-1.1.0f.tar.gz tar xzf openssl-1.1.0f.tar.gz cd openssl-1.1.0f ./config --prefix=/usr/local/openssl make && make install
2
IV , nginx menghidupkan modul sslNginx yang dikompilasi lalai tidak termasuk modul h2 Kami perlu menambah parameter untuk menyusun versi pembangunan nginx 1.9 dan ke atas perlu menambah parameter kompilasi oleh kami daripada perisian Yang dimuat turun dari gudang sumber disusun secara lalai. nginx tidak lagi menyokong spdy.
Jika nginx yang anda susun tidak menyokongnya, kemudian tambah: --with-http_v2_module dalam ./configure Jika tiada sokongan ssl, anda juga perlu menambah --with-http_ssl_module
<. 🎜>1. Cari pakej kod sumber dan semak sama ada konfigurasi menyokong http2
Pada masa ini, anda perlu mencari konfigurasi dalam folder kod sumber semasa memuat turun. Nota: Bukan folder selepas penyusunan.
Dalam konfigurasi "./configure", "--with" bermaksud modul yang membolehkan, yang bermaksud bahawa modul ini tidak akan dibina secara automatik apabila menyusun "--without" Menunjukkan bahawa modul dilumpuhkan, yang bermaksud bahawa modul ini akan dibina secara automatik semasa penyusunan Jika anda mahu nginx berjalan dengan ringan, anda boleh mengalih keluar beberapa modul yang tidak diperlukan.
Daripada rajah di atas, kita tahu bahawa nginx tidak akan membina http_ssl_module dan http_v2_module secara automatik semasa penyusunan. Jadi nginx perlu dikompilasi semula.
2. Tambah kompilasi parameter
Maklumat konfigurasi baharu kami hendaklah ditulis seperti ini:
mv /usr/bin/openssl /usr/bin/openssl.old mv /usr/include/openssl /usr/include/openssl.old ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl ln -s /usr/local/openssl/include/openssl /usr/include/openssl #链接新库文件 ln -s /usr/local/openssl/lib/libssl.so /usr/local/lib64/libssl.so ln -s /usr/local/openssl/lib/libcrypto.so /usr/local/lib64/libcrypto.so #检查更新后的openssl依赖库是否是1.1.0f strings /usr/local/lib64/libssl.so | grep openssl #显示结果表明已升级到最新版本链接库 openssl 1.1.0f 25 may 2017 #配置openssl库文件的搜索路径 echo '/usr/local/openssl/lib' >> /etc/ld.so.conf #使修改后的搜索路径生效 ldconfig -v #查看openssl版本,结果显示升级成功 openssl version openssl 1.1.0f 25 may 2017
./configure --prefix=/usr/local/nginx --with-http_v2_module --with-http_ssl_module --with-openssl=/home/soft/openssl-1.1.0f
3 Sandaran dan penggantian
(1) Kemudian sandarkan nginx yang dipasang asal
make
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_07_22.bak
./nginx -s quit
Tunggu selama 1 minit, dan kemudian anda boleh melihat kesan http2.0.
5 Periksa sama ada tapak web itu ialah http2.0
Klik kanan nama dan semak protokol, supaya anda boleh melihat protokol http.
Alamat tapak web tangkapan skrin di atas:
Atas ialah kandungan terperinci Bagaimana untuk menaik taraf nginx untuk menyokong HTTP2.0. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Untuk membenarkan pelayan Tomcat mengakses rangkaian luaran, anda perlu: mengubah suai fail konfigurasi Tomcat untuk membenarkan sambungan luaran. Tambahkan peraturan tembok api untuk membenarkan akses kepada port pelayan Tomcat. Buat rekod DNS yang menunjukkan nama domain ke IP awam pelayan Tomcat. Pilihan: Gunakan proksi terbalik untuk meningkatkan keselamatan dan prestasi. Pilihan: Sediakan HTTPS untuk meningkatkan keselamatan.

Untuk menyelesaikan ralat "Selamat datang ke nginx!", anda perlu menyemak konfigurasi hos maya, dayakan hos maya, muat semula Nginx, jika fail konfigurasi hos maya tidak dapat ditemui, buat halaman lalai dan muat semula Nginx, kemudian mesej ralat akan hilang dan laman web akan menjadi paparan biasa.

Langkah-langkah penggunaan pelayan untuk projek Node.js: Sediakan persekitaran penggunaan: dapatkan akses pelayan, pasang Node.js, sediakan repositori Git. Bina aplikasi: Gunakan npm run build untuk menjana kod dan kebergantungan yang boleh digunakan. Muat naik kod ke pelayan: melalui Git atau Protokol Pemindahan Fail. Pasang kebergantungan: SSH ke dalam pelayan dan gunakan pemasangan npm untuk memasang kebergantungan aplikasi. Mulakan aplikasi: Gunakan arahan seperti node index.js untuk memulakan aplikasi, atau gunakan pengurus proses seperti pm2. Konfigurasikan proksi terbalik (pilihan): Gunakan proksi terbalik seperti Nginx atau Apache untuk menghalakan trafik ke aplikasi anda

Menukar fail HTML kepada URL memerlukan pelayan web, yang melibatkan langkah berikut: Dapatkan pelayan web. Sediakan pelayan web. Muat naik fail HTML. Buat nama domain. Halakan permintaan.

Bagaimana untuk melaksanakan penstriman HTTP dalam C++? Cipta soket strim SSL menggunakan Boost.Asio dan pustaka klien asiohttps. Sambung ke pelayan dan hantar permintaan HTTP. Terima pengepala respons HTTP dan cetaknya. Menerima badan respons HTTP dan mencetaknya.

Ya, Node.js boleh diakses dari luar. Anda boleh menggunakan kaedah berikut: Gunakan Cloud Functions untuk menggunakan fungsi dan menjadikannya boleh diakses secara umum. Gunakan rangka kerja Express untuk membuat laluan dan menentukan titik akhir. Gunakan Nginx untuk membalikkan permintaan proksi kepada aplikasi Node.js. Gunakan bekas Docker untuk menjalankan aplikasi Node.js dan dedahkannya melalui pemetaan port.

Untuk berjaya menggunakan dan menyelenggara tapak web PHP, anda perlu melakukan langkah berikut: Pilih pelayan web (seperti Apache atau Nginx) Pasang PHP Cipta pangkalan data dan sambungkan PHP Muat naik kod ke pelayan Sediakan nama domain dan Pemantauan DNS penyelenggaraan tapak web langkah termasuk mengemas kini PHP dan pelayan web, dan membuat sandaran tapak web, memantau log ralat dan mengemas kini kandungan.

Tugas penting untuk pentadbir Linux adalah untuk melindungi pelayan daripada serangan atau akses haram. Secara lalai, sistem Linux disertakan dengan firewall yang dikonfigurasikan dengan baik, seperti iptables, Uncomplicated Firewall (UFW), ConfigServerSecurityFirewall (CSF), dsb., yang boleh menghalang pelbagai serangan. Mana-mana mesin yang disambungkan ke Internet adalah sasaran yang berpotensi untuk serangan berniat jahat. Terdapat alat yang dipanggil Fail2Ban yang boleh digunakan untuk mengurangkan akses haram pada pelayan. Apakah Fail2Ban? Fail2Ban[1] ialah perisian pencegahan pencerobohan yang melindungi pelayan daripada serangan kekerasan. Ia ditulis dalam bahasa pengaturcaraan Python
