때때로 서버를 더 높은 버전으로 업그레이드해야 할 때가 있습니다. 이때 서버를 강제로 종료한 뒤 직접 업그레이드를 하면 원래 서버에서 실행되던 프로세스가 영향을 받게 됩니다. 이 문제를 해결하는 방법? 이는 원활한 업그레이드를 통해 해결될 수 있습니다. 원활한 업그레이드 중에는 실행 중인 프로세스가 중지되지 않습니다. 이러한 프로세스는 계속해서 요청을 처리하지만 아직 처리 중인 요청을 처리한 후에는 더 이상 새 요청을 수락하지 않습니다. 이 원활한 업그레이드 프로세스 동안 새로 열린 프로세스는 새로운 요청을 처리합니다.
1. 현재 버전 보기
<code>[root<span>@Admin</span><span>/]# cd /opt/nginx/sbin/</span> [root<span>@Admin</span> sbin]<span># ./nginx -V</span> nginx <span>version</span>: nginx/<span>1.8</span><span>.0</span> built <span>by</span> gcc <span>4.8</span><span>.5</span><span>20150623</span> (Red Hat <span>4.8</span><span>.5</span>-<span>4</span>) (GCC) configure <span>arguments</span>: --prefix=<span>/opt/nginx/</span></code>
2. 새 버전으로 업그레이드
<code>下载新版安装包到/tmp目录下 [root<span>@Admin</span> tmp]<span># ls</span> nginx-<span>1.8</span><span>.0</span>.tar.gz nginx-<span>1.9</span><span>.10</span>.tar.gz 解压到当前目录 [root<span>@Admin</span> tmp]<span># tar -zxvf nginx-1.9.10.tar.gz </span>进入解压目录进行以下操作 [root<span>@Admin</span> tmp]<span># cd nginx-1.9.10</span> [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># ./configure </span> [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># make</span>进入已安装的nginx目录下,备份当前使用的nginx [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># cd /opt/nginx/sbin/</span> [root<span>@Admin</span> sbin]<span># cp nginx nginx.old</span> [root<span>@Admin</span> sbin]<span># ls</span> nginx nginx.old 将新版本的编译文件复制到安装目录 [root<span>@Admin</span> sbin]<span># cd /tmp/nginx-1.9.10</span> [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># ls</span> auto CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># cp -rfp objs/nginx /opt/nginx/sbin/</span> cp:是否覆盖<span>"/opt/nginx/sbin/nginx"</span>? y 查看是否升级成功 [root<span>@Admin</span> nginx-<span>1.9</span><span>.10</span>]<span># cd /opt/nginx/sbin/</span> [root<span>@Admin</span> sbin]<span># ./nginx -V</span> nginx <span>version</span>: nginx/<span>1.9</span><span>.10</span> built <span>by</span> gcc <span>4.8</span><span>.5</span><span>20150623</span> (Red Hat <span>4.8</span><span>.5</span>-<span>4</span>) (GCC) configure <span>arguments</span>: </code>').addClass('pre-numbering').hide ( ); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });
위 내용은 Nginx의 원활한 업그레이드에 대한 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.