cari
RumahOperasi dan penyelenggaraanNginxBagaimana 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

Bagaimana untuk menaik taraf nginx untuk menyokong HTTP2.0

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

Bagaimana untuk menaik taraf nginx untuk menyokong HTTP2.0

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 ssl

Nginx 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. Bagaimana untuk menaik taraf nginx untuk menyokong HTTP2.0

Jalankan ./configure --help

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. Bagaimana untuk menaik taraf nginx untuk menyokong HTTP2.0

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 &#39;/usr/local/openssl/lib&#39; >> /etc/ld.so.conf
#使修改后的搜索路径生效
ldconfig -v
#查看openssl版本,结果显示升级成功
openssl version
openssl 1.1.0f 25 may 2017

Laluan /usr/local/nginx di atas ialah laluan pakej selepas kami menyusunnya.

Kemudian tambah: --with-http_v2_module dalam ./configure Jika tiada sokongan ssl, anda juga perlu menambah --with-http_ssl_module, ditambah dengan openssl yang baru dikemas kini kepada 1.1.0, jadi anda perlu. untuk menambah - -with-openssl=/home/soft/openssl-1.1.0f.

Hanya jalankan arahan di atas selepas konfigurasi selesai

Selepas konfigurasi selesai, jalankan arahan

./configure --prefix=/usr/local/nginx --with-http_v2_module --with-http_ssl_module --with-openssl=/home/soft/openssl-1.1.0f

Jangan lakukan pemasangan di sini, jika tidak, ia akan menjadi. pemasangan timpa

3 Sandaran dan penggantian

(1) Kemudian sandarkan nginx yang dipasang asal

make

(2) Tutup nginx, dan kemudian susun nginx yang baru disusun Gantikan nginx asal

, tutup nginx

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_07_22.bak

, dan alihkan nginx yang disusun ke nginx asal

./nginx -s quit

(3) Mulakan nginx

. /nginx

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.

Bagaimana untuk menaik taraf nginx untuk menyokong HTTP2.0Alamat tapak web tangkapan skrin di atas:

Bandingkan laman web http1.1

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!

Kenyataan
Artikel ini dikembalikan pada:亿速云. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Nginx dalam tindakan: contoh dan aplikasi dunia nyataNginx dalam tindakan: contoh dan aplikasi dunia nyataApr 17, 2025 am 12:18 AM

Nginx boleh digunakan untuk meningkatkan prestasi laman web, keselamatan, dan skalabiliti. 1) Sebagai proksi terbalik dan pengimbang beban, Nginx dapat mengoptimumkan perkhidmatan back-end dan berkongsi lalu lintas. 2) Melalui seni bina yang didorong oleh peristiwa dan tak segerak, Nginx dengan cekap mengendalikan sambungan serentak yang tinggi. 3) Fail konfigurasi membenarkan definisi peraturan yang fleksibel, seperti perkhidmatan fail statik dan mengimbangi beban. 4) Cadangan pengoptimuman termasuk membolehkan pemampatan GZIP, menggunakan cache dan menala proses pekerja.

Unit Nginx: Menyokong bahasa pengaturcaraan yang berbezaUnit Nginx: Menyokong bahasa pengaturcaraan yang berbezaApr 16, 2025 am 12:15 AM

NginxUnit menyokong pelbagai bahasa pengaturcaraan dan dilaksanakan melalui reka bentuk modular. 1. Memuatkan Modul Bahasa: Muatkan modul yang sepadan mengikut fail konfigurasi. 2. Permulaan Permohonan: Jalankan kod aplikasi apabila bahasa panggilan berjalan. 3. Permintaan Pemprosesan: Teruskan permintaan kepada contoh permohonan. 4. Pulangan Respons: Kembalikan respons yang diproses kepada pelanggan.

Memilih antara nginx dan apache: sesuai untuk keperluan andaMemilih antara nginx dan apache: sesuai untuk keperluan andaApr 15, 2025 am 12:04 AM

Nginx dan Apache mempunyai kelebihan dan kekurangan mereka sendiri dan sesuai untuk senario yang berbeza. 1.Nginx sesuai untuk senario penggunaan sumber yang tinggi dan rendah. 2. Apache sesuai untuk senario di mana konfigurasi kompleks dan modul yang kaya diperlukan. Dengan membandingkan ciri teras mereka, perbezaan prestasi, dan amalan terbaik, anda boleh membantu anda memilih perisian pelayan yang paling sesuai dengan keperluan anda.

Cara Memulakan NginxCara Memulakan NginxApr 14, 2025 pm 01:06 PM

Soalan: Bagaimana untuk memulakan nginx? Jawapan: Pasang Nginx Startup Nginx Verification Nginx adalah nginx mula meneroka pilihan permulaan lain secara automatik Mula nginx

Cara memeriksa sama ada nginx dimulakanCara memeriksa sama ada nginx dimulakanApr 14, 2025 pm 01:03 PM

Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Cara menutup nginxCara menutup nginxApr 14, 2025 pm 01:00 PM

Untuk menutup perkhidmatan nginx, ikuti langkah -langkah berikut: Tentukan jenis pemasangan: Red Hat/CentOS (status SistemCTL nginx) atau debian/ubuntu (status nginx) menghentikan perkhidmatan: Red Hat/CentOS (SystemCtl Stop Nginx) atau Debian/Ubuntu (perkhidmatan Nginx) (Syst

Cara Mengkonfigurasi Nginx di WindowsCara Mengkonfigurasi Nginx di WindowsApr 14, 2025 pm 12:57 PM

Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Cara menyelesaikan ralat nginx403Cara menyelesaikan ralat nginx403Apr 14, 2025 pm 12:54 PM

Pelayan tidak mempunyai kebenaran untuk mengakses sumber yang diminta, mengakibatkan ralat NGINX 403. Penyelesaian termasuk: Periksa keizinan fail. Semak konfigurasi .htaccess. Semak konfigurasi Nginx. Konfigurasikan keizinan Selinux. Semak peraturan firewall. Menyelesaikan masalah lain seperti masalah penyemak imbas, kegagalan pelayan, atau kesilapan lain yang mungkin.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

DVWA

DVWA

Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual