nginx编译安装

1.准备工作

创建nginx系统用户

每个服务创建单独的用户,方便管理

useradd -s -M -r /sbin/nologin nginx

系统用户不用给家目录,让它在后台跑nginx服务的进程就可,不用像普通用户一样去登录

安装依赖环境和包组

依赖包

使用yum安装的话是自动安装,要是二进制或编译安装的话就需要自己手动安装依赖包

yum -y install pcre-devel openssl openssl-devel gd-devel gcc gcc-c++

包组

里面有make这些编译安装的工具

yum -y groups mark install 'Development Tools'

创建nginx的日志存放目录

一般默认在/var/log/下创建一个nginx目录,用来存放错误日志和正确访问日志

错误日志和正确访问日志不需要手动创建,第一次nginx服务启动后自动创建

#创建目录
mkdir -p /var/log/nginx

#改属主属组
chown -R nginx.nginx /var/log/nginx

因为这个目录里面的日志文件需要nginx服务去写入,所以用nginx跑nginx服务的话,需要给这个目录相应的权限

下载

nginx: downloadicon-default.png?t=M276https://nginx.org/en/download.html

点进去后有不同版本,一般不选最新的,因为刚开发出来,有可能有bug或者什么没测试出来的错误,所以一般选择第一个版本的

右键点击,然后复制链接,到终端里用wget下载,没有wget用curl也可以

#下载安装包一般在这
[root@localhost ~]# cd /usr/src/
[root@localhost src]# wget https://nginx.org/download/nginx-1.20.2.tar.gz

然后解压到/usr/local目录下 

-C 是指定解压到指定目录

[root@localhost src]# ls
debug  kernels  nginx-1.20.2.tar.gz
[root@localhost src]# tar xf nginx-1.20.2.tar.gz -C /usr/local

编译安装

解压后会看到一个带有版本号的目录在/usr/local下,直接进去编译安装

这里是使用的它自带的configure脚本文件来进行编译,后面跟的模块具体参考Nginx中文文档icon-default.png?t=M276https://www.nginx.cn/doc/

#编译
[root@localhost local]# ls
bin  games    lib    libexec      sbin   src
etc  include  lib64  nginx-1.20.2  share
[root@localhost local]# cd nginx-1.20.2/
[root@localhost nginx-1.20.2]# ./configure \
--prefix=/usr/local/nginx \
--user=nginx \
--group=nginx \
--with-debug \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_image_filter_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--http-log-path=/var/log/nginx/access.log \
--error-log-path=/var/log/nginx/error.log

#安装
[root@localhost nginx-1.20.2]# make && make install

这里使用make安装是两条命令一起的 ,用了&&进行隔开

&& 作用是,当上条命令执行完成后在执行下一条命令

提示:

这里使用configure进行编译时,有可能报错,如果报错信息里有后面跟着的模块名,那么在命令中删除这个模块即可,一般是版本太老不兼容这个模块,不过像1.20的一般没问题

安装后配置

配置环境变量

[root@localhost ~]# echo 'export PATH=/usr/local/nginx/sbin:$PATH' > /etc/profile.d/nginx.sh
[root@localhost ~]# . /etc/profile.d/nginx.sh

查看

[root@localhost ~]# nginx
[root@localhost ~]# ss -antl
State      Recv-Q Send-Q   Local Address:Port                  Peer Address:Port
LISTEN     0      128                  *:80                               *:*
LISTEN     0      128                  *:22                               *:*
LISTEN     0      100          127.0.0.1:25                               *:*
LISTEN     0      128                 :::22                              :::*
LISTEN     0      100                ::1:25                              :::* 

修改nginx配置文件后,不能直接用restart重启

需要用 ngin -s stop 先停止服务,在 nginx 启动

-s 后面可以跟一个参数

修改玩配置文件后,可用nginx -t 来检测更改的内容语法是否正确

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值