如何重启nginxweb服务器?

Nginx是一个流行的web服务器,它是Apache、IIS等其他web服务器的替代品。Nginx是一个免费的开源、高性能的主动web服务器,并反向代理服务器。Nginx提供了更好的针对Apache和IIS的性能。大多数Linux系统管理员在日常操作中处理nginxweb服务器。在本教程中,我们将研究并学习如何使用不同的方法和命令(如systemctl、service、Nginx命令、kill命令等)重新启动Nginx服务器。

null

为什么重启Nginx?

在重新启动Nginx服务器或服务之前,您应该有一个有效的理由重新启动它。特别是在一个关键的应用程序中,Nginx服务器可能无法正常启动,这将中断服务并给您带来压力。可以列出以下原因来重新启动Nginx服务器。

  • Nginx崩溃了,不能正常工作
  • 应启用新配置
  • 清除web服务器缓存
  • 关闭并清除所有用户会话
  • 添加新的web服务器或端口实例

强行重启还是优雅重启?

一般来说,nginxweb服务器可以通过两种不同的方式重新启动。它们被称为 强制重启 优雅地重新启动 . 强制重启将立即重启主Nginx和子进程,用户会话将丢失。优雅地重新启动将首先使用新配置启动新的子进程,然后停止并启动主进程。

显示Nginx服务状态和上次启动时间

在重新启动Nginx之前,列出并显示Nginx服务和服务器的当前启动状态将非常有用。另外,最后的开始时间可以用systemctl status命令列出,如下所示。Nginx服务名称为Nginx或Nginx.service

$ sudo systemctl status nginx
图片[1]-如何重启nginxweb服务器?-yiteyi-C++库
显示带有systemctl的Nginx服务状态

用systemctl命令重新启动

重新启动Nginx服务器或服务的最简单、直接和可靠的方法是使用systemctl restart命令。大多数Linux发行版(如Ubuntu、Debian、Mint、CentOS、RHEL、SUSE等)都提供了systemctl命令。

$ sudo systemctl restart nginx

如果Nginx服务正确地重新启动而没有出现问题,我们将在命令行上看不到任何内容。如果出现配置、权限等错误,错误将打印到终端/命令行。在下面的示例中,存在权限错误,Nginx服务无法成功启动。

$ systemctl restart nginx
图片[2]-如何重启nginxweb服务器?-yiteyi-C++库
无法重新启动nginx.service错误

使用systemctl命令优雅地重新启动

我们还可以使用 系统控制重新加载 命令。如前所述,优雅的重新启动将使用新配置创建新的子进程或工作进程,然后正确地停止旧的Nginx进程。

$ sudo systemctl reload nginx

或者使用完整的Nginx服务名称

$ sudo systemctl reload nginx.service

使用/etc/init.d/nginx SystemV脚本重新启动

SystemV是Linux、Unix和BSD系统的一种旧的服务管理方式。甚至可以使用systemd/systemctl SystemV init.d脚本来重新启动Nginx服务。

$ sudo /etc/init.d/nginx restart

优雅地重新启动/etc/init.d/nginx SystemV脚本

SystemV init.d脚本还提供了一个带有 nginx重新加载 脚本如下。

$ sudo /etc/init.d/nginx reload

使用nginx命令重新启动

Nginx可执行文件用于启动web服务器、加载配置创建子进程/工作进程等。Nginx还可以通过发送进程信号来重新启动web服务器。一般来说,nginx二进制文件位于 /sbin/nginx公司 但也可以选择位于 /usr/local/nginx/sbin/nginx 等等。

$ sudo /sbin/nginx -s reload$ $ sudo nginx -s reload

使用服务命令重新启动

service 命令是重启nginxwebserver服务的另一种选择。服务重启将用于重启Nginx服务器,该服务器名为Nginx,如下所示。

$ sudo service nginx restart

使用服务命令优雅地重新启动

service命令还提供了如下所示的service reload命令的良好重启能力。

$ sudo service nginx reload

在Windows中重新启动Nginx

即使Nginx主要用于Linux系统,它也支持windows操作系统,如windows服务器和windows10。与Linux系统类似,Nginx二进制文件可以用来重新启动web服务器。我们将使用 nginx-s重新加载 Nginx安装路径中的命令。以下命令可以在cmd MS-DOS或PowerShell中运行,没有问题,但是您应该在Nginx安装路径中。

> nginx -s reload

使用cron在特定时间段重新启动Nginx

有时您可能会遇到运行在nginxweb服务器上的服务器软件或web应用程序的问题。这个有问题的web应用程序可能会阻塞Nginx服务器或使其崩溃。在这种情况下,定期重启Nginx服务器可能有助于减少问题,即使这不是一个完美的解决方案。您可以使用cron重新启动Nginx服务,如下所示。

测试并检查Nginx服务器配置和错误

Nginx是一个复杂的web服务器,为单个或多个域配置了不同的配置文件。在更改和重新启动过程中,可能会出现语法或打字错误。当Nginx服务重新启动时,如果配置无效,那么它将不会启动并保持停止状态。为了重新开始,应该纠正错误。为了防止出现这种情况,我们可以先检查当前的Nginx配置文件,然后用 nginx-t公司 命令如下。

$ sudo nginx -t
图片[3]-如何重启nginxweb服务器?-yiteyi-C++库
检查nginx配置

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享