nginx编译安装

nginx编译安装

准备工作

1.下载源码包(http//www.nginx.org/)
wget http://nginx.org/download/nginx-1.19.1.tar.gz
2.安装gcc编译器
yum install gcc -y
3.解压安装包
tar vzxf nginx-1.19.1.tar.gz

正式安装(步骤)

1.编译前的配置=》配置什么?

那些功能开启,安装到哪里,等
configure 的目的是生成一个Makefile文件
configure这个脚本帮我们检查我们系统里那些依赖的软件是否安装
–prefix=PATH 指定安装路径

  • with-http_ssl_module 开启ssl功能支持https
    Makefile可以理解成一个配置文件,里面定义那些功能开启,安装的路径等
    development 开发库:里面有很多的函数和接口,给其他开发工具使用
    –with 表示默认情况下没有带 --》启用某个功能
    –WITHOUT 表示默认情况下有带 --》禁用某个功能,默认开启

    nginx将很多的功能都进行了模块化的划分,开启某个功能其实就是加载某个模块到nginx主程序里

    –with-stream 对4层负载均衡的支持 --》根据端口号进行转发数据

解决依赖关系:

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

执行配置文件:./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-stream --user=wgh

在这里插入图片描述

2.编译
make

在这里插入图片描述

3.安装
make install

在这里插入图片描述

4.启动

由于此前配置的–user=wgh不存在,所以在执行之前必须先创立wgh用户

查看端口检查nginx是否启动,nginx的默认端口是80,所以检查的端口是80
在这里插入图片描述

master 进程是主进程,是一个管理进程,是worker进程的父进程
worker 是工作进程,提供web服务的进程

nginx是一个多线程提供web服务的软件–》高效的web服务器软件

PATH=$PATH:/usr/local/nginx/sbin/

将nginx加入PATH变量中,以便在linux中使用

编译安装的不能使用systemctrl enable nginx去设置开机启动,因为没有相关的脚本和配置

vim /usr/lib/systemd/system/nginx.service
[Unit]

Description=The nginx HTTP and reverse proxy server

After=network.target remote-fs.target   nss-lookup.target


[Service]

Type=forking

PIDFile=/usr/local/nginx/logs/nginx.pid

# Nginx will fail to start if /run/nginx.pid already exists but has the wrong

# SELinux context. This might happen when running `nginx -t` from the cmdline.

# https://bugzilla.redhat.com/show_bug.cgi?id=1268621

ExecStartPre=/usr/bin/rm -f /usr/local/nginx/logs/nginx.pid

ExecStartPre=/usr/local/nginx/sbin/nginx -t

ExecStart=/usr/local/nginx/sbin/nginx

ExecReload=/bin/kill -s HUP $MAINPID

KillSignal=SIGQUIT

TimeoutStopSec=5

KillMode=mixed

PrivateTmp=true



[Install]

WantedBy=multi-user.target

在这里插入图片描述

如果service nginx restart 后出现以下情况
在这里插入图片描述

则需要利用(kill -9 进程号)杀死之前的nginx进程,然后重新使用service nginx restart即可。

至此,nginx基本配置完毕,将此前设置的临时PATH变量改为永久

echo 'PATH=$PATH:/usr/local/nginx2/sbin/'  >>/etc/bashrc

号)杀死之前的nginx进程,然后重新使用service nginx restart即可。

至此,nginx基本配置完毕,将此前设置的临时PATH变量改为永久

echo 'PATH=$PATH:/usr/local/nginx2/sbin/'  >>/etc/bashrc
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值