首页 > 系统相关 >Nginx 编译安装和守护进程

Nginx 编译安装和守护进程

时间:2023-05-24 13:33:34浏览次数:39  
标签:supervisor nginx 启动 Nginx systemctl usr 编译 守护

在CentOS 7中下载、编译和安装Nginx 1.20.1源代码需要以下步骤:

安装编译环境及相关依赖
sudo yum install -y gcc make pcre-devel zlib-devel openssl-devel

下载Nginx 1.20.1版本源代码
进入Nginx官网https://nginx.org/en/download.html 将Nginx 1.20.1的源代码链接复制到终端中进行下载,如下所示:
wget https://nginx.org/download/nginx-1.20.1.tar.gz

解压并进入nginx1.20.1源码目录
tar -zxvf nginx-1.20.1.tar.gz
cd nginx-1.20.1

配置并编译Nginx源代码
sudo ./configure --prefix=/usr/share/nginx --with-http_ssl_module
sudo make
sudo make install

启动nginx :sudo nginx

PS:systemctl 启动的程序不要用kill -9 杀进场。

PS:vim subscription-manager.conf :enabled=0 解决centos7 注册问题:
This system is not registered with an entitlement server. You can use subscription-manager to register


###################################################################################
PS:后面遇到一个问题,nginx页面可以访问,但是在systemctl status nginx 里却没有nginx.server
手动创建nginx系统服务:
1 vim /usr/lib/systemd/system/nginx.service
2 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf
这是使用系统软件包管理器安装 Nginx 的默认配置。
其中,Nginx 可执行文件路径为 /usr/sbin/nginx,Nginx 主配置文件路径为 /etc/nginx/nginx.conf
若安装时定义了:./configure --prefix=/usr/share/nginx --sbin-path=/usr/sbin/nginx
那么 ExecStart=/usr/sbin/nginx -c /usr/share/nginx/nginx.conf
3 systemctl daemon-reload
4 systemctl restart nginx.service
###################################################################################

 

通过 supervisor 来将 Nginx 启动为守护进程。具体步骤如下:

安装 supervisor 和 nginx。

编写 supervisor 的配置文件 /etc/supervisord.d/nginx.ini,内容如下:
[program:nginx]
command=/usr/sbin/nginx -g "daemon off;"
autostart=true
autorestart=true
startsecs=5
startretries=10
user=root
stdout_logfile=/var/log/supervisor/nginx.log
stderr_logfile=/var/log/supervisor/nginx.log

其中,command 参数指定了启动 Nginx 的命令,并使用了 daemon off; 选项来避免将 Nginx 启动为守护进程,(systemctl里的nginx.server就失效了,systemctl 启动、停止或重启 Nginx 也就失效了)因为 supervisor 已经会将其启动为守护进程。autostart 和 autorestart 分别表示在启动 supervisor 时是否自动启动 Nginx,并在 Nginx 进程异常退出时是否自动重启。startsecs 和 startretries 分别表示启动 Nginx 的超时时间和尝试启动的次数。user 表示以哪个用户的权限启动 Nginx 进程。

在 supervisor 配置文件 /etc/supervisord.conf 中添加以下内容:

[include]
files = /etc/supervisord.d/*.ini

这样,在 supervisor 启动时会自动加载 /etc/supervisord.d/ 目录下的所有 .ini 文件,而不需要手动指定每个配置文件的路径。

启动 supervisor 和 nginx。

systemctl start supervisord
systemctl start nginx
经过这样的配置后,supervisor 将会启动 Nginx 并将其作为守护进程运行,即使 Nginx 进程异常退出或被意外终止,supervisor 也会自动重新启动它。

 

标签:supervisor,nginx,启动,Nginx,systemctl,usr,编译,守护
From: https://www.cnblogs.com/sinsenliu/p/17421318.html

相关文章

  • 编译原理
    一、实验目的 通过完成预测分析法的语法分析程序,了解预测分析法和递归子程序法的区别和联系。使学生了解语法分析的功能,掌握语法分析程序设计的原理和构造方法,训练学生掌握开发应用程序的基本方法。有利于提高学生的专业素质,为培养适应社会多方面需要的能力。二、实验内容根据某......
  • windows环境下的vue部署(使用nginx)
    首先需要将vue项目打包成dist,在需要部署的服务器上进行解压然后我们使用nginx进行反向代理设置,具体操作如下打开解压后的nginx,进入目录:nginx-1.23.4->conf,打开编辑nginx.conf*注意:对于后端路径的映射这里一定是^~/前缀/对应于地址的端口/前缀/,这里一定是两个//包裹。以下......
  • C语言--编译过程
              ......
  • 解决nginx+django+swagger打开swagger需要进行Django Login
    一、将drf-yasg包的static目录拷贝到Django项目根目录下二、修改nginx配置,添加如下红框中的内容三、重启nginxsystemctlrestartnginx这样再次打开http://XXX:XX/swagger/即可直接打开swagger接口文档 ......
  • Nginx 配置
    #172.18.150.198epros-test-01upstreameprosdesignerService{server172.18.150.198:8080;}upstreameprosviewerService{server172.18.150.198:8088;}upstreameprosssoService{server172.18.150.198:8099;}upstreameprosapiService{......
  • docker 安装 nginx
    从https://blog.csdn.net/u010148813/article/details/126172372摘要的内容1.下载镜像dockerpullnginx:1.22.02.创建挂载目录mkdir/root/apply/docker/apply/nginx3.从容器中复制要挂载的文件dockerrun--namenginx1.22-p10080:80-dnginx:1.22.0dockercpngi......
  • https部署与docker下nginx的转发+文件获取
    进入nginx容器查看是否有etc/nginx/cert目录将https的域名证书放到cert目录下配置80和443server{#listen80;#侦听80端口listen80;#侦听443端口,用于SSLserver_name127.zyfdtsite.com;client_max_body_size1024m;#charsetkoi8-r;#acc......
  • nginx常用配置
    常用配置路径代理映射http和https配置nginx路径下的配置文件:/etc/nginx/conf.d/nginx.conf (每个人的可能不一样,但是我这个就是yum直接安装的)如下配置配置http和https、ws和wss#自定义配置地址upstreamhalo{server127.0.0.1:8090;}server{listen80;l......
  • 基于FPGA的HDB3编译码verilog实现,包括testbench
    1.算法仿真效果vivado2019.2仿真结果如下:  2.算法涉及理论知识概要       数字基带信号的传输是数字通信系统的重要组成部分。在数字通信中,有些场合可不经过载波调制和解调过程,而对基带信号进行直接传输。采用AMI码的信号交替反转,有可能出现四连零现象,这不利于接......
  • Nginx 可视化神器!复杂配置一键生成,监控管理一条龙!
    功能说明nginxWebUI是一款图形化管理nginx配置的工具,可以使用网页来快速配置nginx的各项功能,包括http协议转发、tcp协议转发、反向代理、负载均衡、静态html服务器、ssl证书自动申请、续签、配置等。配置好后可一建生成nginx.conf文件,同时可控制nginx使用此文件进行启动与重载,完成......