cari
RumahOperasi dan penyelenggaraanNginx如何在不影响业务的情况下升级nginx版本

如何在不影响业务的情况下升级nginx版本

本文介绍了对yum安装的nginx的平滑升级的方法,如果原先的nginx是编译安装的,那么在升级时要注意自己的实际配置情况。

(推荐教程:nginx教程

1、查看yum安装的nginx版本及现有配置

先记录下以前的配置,后面会用到

nginx -V
nginx version: nginx/1.12.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)
built with OpenSSL 1.0.2k-fips 26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-debug --with-cc-opt=’-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic’ --with-ld-opt=’-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E’ --add-module=/root/nginx-rtmp-module

configure arguments:后面,即为nginx现有的配置

2、下载需要的新版本的nginx的源码包

wget http://nginx.org/download/nginx-1.14.2.tar.gz

3、将原来的nginx重要文件备份(为了安全)

mv /usr/sbin/nginx /usr/sbin/nginx.back 
cp -rf /etc/nginx /etc/nginx.back

4、进行编译

采用前面查到的配置,如有新模块要添加也可加入

tar xf  nginx-1.14.2.tar.gz
cd nginx-1.14.2
./configure --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx --modules-path=/usr/lib64/nginx/modules --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/lib/nginx/tmp/client_body --http-proxy-temp-path=/var/lib/nginx/tmp/proxy --http-fastcgi-temp-path=/var/lib/nginx/tmp/fastcgi --http-uwsgi-temp-path=/var/lib/nginx/tmp/uwsgi --http-scgi-temp-path=/var/lib/nginx/tmp/scgi --pid-path=/run/nginx.pid --lock-path=/run/lock/subsys/nginx --user=nginx --group=nginx --with-file-aio --with-ipv6 --with-http_auth_request_module --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module=dynamic --with-http_image_filter_module=dynamic --with-http_geoip_module=dynamic --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module=dynamic --with-mail=dynamic --with-mail_ssl_module --with-pcre --with-pcre-jit --with-stream=dynamic --with-stream_ssl_module --with-debug --with-cc-opt=’-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generic’ --with-ld-opt=’-Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -Wl,-E’ --add-module=/root/nginx-rtmp-module

5、make

由于原先已有nginx,所以不能执行make install,否则会覆盖掉以前的配置文件及内容

make
cp objs/nginx /usr/sbin/nginx

6、检查是否成功

/usr/sbin/nginx -t

7、平滑切换

注意:要根据自己实际的编译的配置内容,查找自己的pid文件的位置。文中原来的nginx为yum安装,所以在 /var/run下。

实际上也可在nginx-1.14.2目录下,使用make update 升级,为了避免问题,建议全手动处理

kill -USR2 `cat /var/run/nginx.pid`              将旧版本Nginx的主进程将重命名为nginx.pid.oldbin,并执行新版本的Nginx可执行程序,启动新的主进程和新的工作进程,再次生成新的nginx.pid文件
kill -WINCH `cat /var/run/nginx.pid.oldbin`      平缓停止worker process(此步骤可省略)
kill -QUIT `cat /var/run/nginx.pid.oldbin`       平缓停止旧的Nginx服务进程

8、查看

f7a72f8226865d78c487ff3959a2aa9.png

文章补充:

Nginx支持的信号

可以用来控制Nginx的活动

TERM,INT——快速关闭

QUIT          平滑关闭

HUP           平滑重启,重新加载配置文件

USR1          重新打开日志文件

USR2          平滑升级可执行程序

WINCH         平滑关闭工作进程

Atas ialah kandungan terperinci 如何在不影响业务的情况下升级nginx版本. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:csdn. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Menggunakan Nginx: Mengoptimumkan prestasi laman web dan kebolehpercayaanMenggunakan Nginx: Mengoptimumkan prestasi laman web dan kebolehpercayaanMay 09, 2025 am 12:19 AM

Nginx boleh meningkatkan prestasi dan kebolehpercayaan laman web oleh: 1. Proses kandungan statik sebagai pelayan web; 2. Permintaan ke hadapan sebagai pelayan proksi terbalik; 3. Peruntukkan permintaan sebagai pengimbang beban; 4. Mengurangkan tekanan backend sebagai pelayan cache. NGINX dapat meningkatkan prestasi laman web dengan ketara melalui pengoptimuman konfigurasi seperti membolehkan pemampatan GZIP dan menyesuaikan penyatuan sambungan.

Tujuan nginx: melayani kandungan web dan banyak lagiTujuan nginx: melayani kandungan web dan banyak lagiMay 08, 2025 am 12:07 AM

NginxserveswebcontentandactsasareVerseProxy, loadbalancer, andmore.1) itefficientlyservesstaticcontentlikehtmlandimages.2) itfunctionsasareverseProxyandloadalancer, distributingtrafficacrosservers.3)

Unit Nginx: Menyelaraskan Penggunaan AplikasiUnit Nginx: Menyelaraskan Penggunaan AplikasiMay 07, 2025 am 12:08 AM

NginxUnit memudahkan penggunaan aplikasi dengan konfigurasi dinamik dan sokongan berbilang bahasa. 1) Konfigurasi dinamik boleh diubah suai tanpa memulakan semula pelayan. 2) Menyokong pelbagai bahasa pengaturcaraan, seperti Python, PHP, dan Java. 3) Mengadopsi model I/O yang tidak menyentuh tak segerak untuk meningkatkan prestasi pemprosesan keserasian yang tinggi.

Impak Nginx: Pelayan Web dan seterusnyaImpak Nginx: Pelayan Web dan seterusnyaMay 06, 2025 am 12:05 AM

Nginx pada mulanya menyelesaikan masalah C10K dan kini telah berkembang menjadi satu pusingan yang mengendalikan pengimbangan beban, proksi terbalik dan gerbang API. 1) Ia terkenal dengan seni bina yang didorong oleh peristiwa dan tidak menyekat dan sesuai untuk kesesuaian yang tinggi. 2) Nginx boleh digunakan sebagai pelayan proksi HTTP dan terbalik, menyokong IMAP/POP3. 3) Prinsip kerja berdasarkan model I/O yang didorong oleh peristiwa dan tidak segerak, meningkatkan prestasi. 4) Penggunaan asas termasuk mengkonfigurasi tuan rumah maya dan mengimbangi beban, dan penggunaan lanjutan melibatkan strategi pengimbangan beban dan caching kompleks. 5) Kesilapan biasa termasuk kesilapan sintaks konfigurasi dan isu kebenaran, dan kemahiran debugging termasuk menggunakan perintah nginx-t dan modul stub_status. 6) Cadangan pengoptimuman prestasi termasuk menyesuaikan parameter pekerja, menggunakan mampatan gzip dan

Penyelesaian Masalah Nginx: Mendiagnosis dan Menyelesaikan Kesalahan BiasaPenyelesaian Masalah Nginx: Mendiagnosis dan Menyelesaikan Kesalahan BiasaMay 05, 2025 am 12:09 AM

Diagnosis dan penyelesaian untuk kesilapan biasa Nginx termasuk: 1. Lihat fail log, 2. Laraskan fail konfigurasi, 3 mengoptimumkan prestasi. Dengan menganalisis log, menyesuaikan tetapan masa tamat dan mengoptimumkan cache dan mengimbangi beban, kesilapan seperti 404, 502, 504 dapat diselesaikan dengan berkesan untuk meningkatkan kestabilan dan prestasi laman web.

Menggunakan Aplikasi dengan Unit Nginx: PanduanMenggunakan Aplikasi dengan Unit Nginx: PanduanMay 04, 2025 am 12:03 AM

Nginxunitischosenfordeployingapplicationsduetoitsflexability, easeofuse, andabilitytoHandledynamicapplications.1) itsupportsmultipleProgrammingLanguageSepython, PHP,

Nginx dan web hosting: melayani fail dan menguruskan lalu lintasNginx dan web hosting: melayani fail dan menguruskan lalu lintasMay 03, 2025 am 12:14 AM

Nginx boleh digunakan untuk menyampaikan fail dan menguruskan lalu lintas. 1) Konfigurasi fail statik perkhidmatan nginx: Tentukan port pendengaran dan direktori fail. 2) Melaksanakan pengimbangan beban dan pengurusan lalu lintas: Gunakan dasar modul dan cache hulu untuk mengoptimumkan prestasi.

Nginx vs Apache: Membandingkan Teknologi Pelayan WebNginx vs Apache: Membandingkan Teknologi Pelayan WebMay 02, 2025 am 12:08 AM

Nginx sesuai untuk mengendalikan kandungan konkurensi tinggi dan statik, manakala Apache sesuai untuk kandungan dinamik dan penulisan semula URL yang kompleks. 1.Nginx mengamalkan model yang didorong oleh peristiwa, sesuai untuk kesesuaian yang tinggi. 2. Apache menggunakan model atau model benang, yang sesuai untuk kandungan dinamik. 3. Konfigurasi Nginx adalah mudah, manakala konfigurasi Apache adalah kompleks tetapi lebih fleksibel.

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

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.