使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

码农世界 2024-05-28 后端 102 次浏览 0个评论

目录

  • 使用源代码安装软件【Nginx】
    • 前言
    • 具体步骤
      • 下载nginx源代码包
      • 将源代码包进行解压缩
      • 安装依赖库
      • 执行configure脚本生成编译配置文件Makefile
      • 执行命令make编译源代码
      • 执行make install安装软件
      • 测试nginx
      • 编写systemd单元文件管理nginx服务
        • 前言
        • 具体步骤
          • 编写文件
          • 启动nginx
          • 总结

            使用源代码安装软件【Nginx】

            前言

            在数字化时代,Nginx已成为构建高性能网络架构的重要组件,无论是作为反向代理服务器、负载均衡器,还是静态文件服务器,它都展现出了卓越的性能和稳定性。然而,对于许多寻求更深入控制、定制和优化Nginx功能的用户来说,使用预编译的二进制包可能无法满足所有需求。从源代码安装Nginx则提供了一个更为灵活和个性化的途径。通过源代码安装,您可以根据需要调整编译选项,添加或禁用特定模块,从而更好地满足特定应用场景的需求。同时,这一过程也有助于加深对Nginx内部机制的理解,为未来的系统维护和扩展打下坚实的基础。在本篇文章中,我们将逐步指导您完成从源代码安装Nginx的过程,并分享一些最佳实践和调优建议,助您打造高效、稳定的Nginx服务器。)

            具体步骤

            下载nginx源代码包

            首先我们需要下载nginx源代码包

            wget -c http://nginx.org/download/nginx-1.20.2.tar.gz
            

            使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

            将源代码包进行解压缩

            tar zxvf nginx-1.20.2.tar.gz
            

            使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

            安装依赖库

            先进入nginx-1.20.2文件,后安装c++编译环境,安装PCRE库,安装OpenSSL库,安装zlib库。

            cd nginx-1.20.2

            yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel openssl openssl-devel

            使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

            执行configure脚本生成编译配置文件Makefile

            ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module
            

            使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

            执行命令make编译源代码

            make

            使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

            执行make install安装软件

            make install

            使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

            至此完成nginx的编译安装。

            测试nginx

            如果当前还运行apache服务器,请停止它以免产生冲突:

            systemctl stop httpd.service

            根据上述设置,ngunx安装在/usr/local/nginx 目录中,可以直接执行其中的命令nginx来启动它:

            /usr/local/nginx/sbin/nginx

            此时可以使用浏览器访问进行实测,结果正常

            注意:访问地址为自己的IP地址

            使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务

            可以使用以下命令重新加载配置,重启,停止,退出nginx服务:

            /usr/local/nginx/sbin/nginx -s reload|reopen|stop|quit

            编写systemd单元文件管理nginx服务

            前言

            在现代Linux系统中,systemd已经成为初始化系统和服务管理器的标准。对于管理Nginx这类关键服务,使用systemd单元文件提供了灵活、强大且统一的管理方式。通过编写systemd单元文件,我们可以实现服务的自动启动、重启、状态监控和日志管理等功能,确保Nginx服务的稳定性和可靠性。在本篇文章中,我们将探讨如何编写systemd单元文件来管理Nginx服务。

            具体步骤

            编写文件

            在/usr/lib/systemd/system或/etc/systemd/system目录下创建一个nginx.service文本文件,设置内容如下:

            [Unit]
            Description=nginx - high performance web server
            Documentation=http://nginx.org/en/docs/
            After=network.target remote-fs.target nss-lookup.target
            [Service]
            Type=forking
            PIDFile=/usr/local/nginx/logs/nginx.pid
            ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf
            ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
            ExecReload=/bin/kill -s HUP $MAINPID
            ExecStop=/bin/kill -s QUIT $MAINPID
            PrivateTmp=true
            [Install]
            WantedBy=multi-user.target
            

            启动nginx

            要让systemd重新识别此单元文件,通常执行systemctl daemon-reload命令重载配置,或者重启系统。这样就可以使用systemd来管理nginx的启动,重启,随机启动等。

            执行此命令启动nginxsystemctl start nginx.service

            执行以下命令使nginx随机启动:

            systemctl enable nginx.service

            总结

            以上就是今天要讲的内容,本文仅仅简单介绍了使用源代码安装nginx和编写systemd单元文件管理nginx服务。

            Tips:编写systemd文件后启动nginx时,需要先将在/usr/local/nginx目录中的nginx的服务停止,否则在启动nginx时会报错。

            ————DU04-wangdang

转载请注明来自码农世界,本文标题:《使用源代码安装软件【Nginx】 编写systemd单元文件管理nginx服务》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,102人围观)参与讨论

还没有评论,来说两句吧...

Top