编译安装nginx

一、编译安装前的准备

1先停止yum安装的nginx

[root@web-1 nginx]# systemctl stop nginx      

2.查看端口和进程检查时都停止nginx

[root@web-1 nginx]# ps aux|grep nginx

root       1551  0.0  0.0 112824   988 pts/0    R+   10:06   0:00 grep --color=auto nginx

[root@web-1 nginx]# netstat -anplut|grep 80

[root@web-1 nginx]#

二、在全新的服务器上进行编译安装

1.下载源码包并解压

[root@web-1 ~]# mkdir  /nginx

[root@web-1 ~]# cd /nginx/

[root@web-1 nginx]# ls

[root@web-1 nginx]#curl -O https://nginx.org/download/nginx-1.26.1.tar.gz        官网下载源码包

解压源码包

[root@web-1 nginx]#tar  xf  nginx-1.26.1.tar.gz

2.定制nginx启用哪些模块

用户可以指定安装位置,启用哪些模块(功能),不启用哪些模块(功能),可以定制nginx这个软件

[root@web-2 nginx-1.26.1]# ./configure  --prefix=/usr/local/nginx-1  --user=limingzhe  --group=limingzhe   --with-http_ssl_module  --with-http_v2_module  --with-threads   --with-stream   --with-http_stub_status_module

3.编写nginx自动安装脚本

[root@web-1 nginx]# cat install_nginx.sh       

#!/bin/bash

#创建存放nginx源码的目录

mkdir  -p  /nginx

#进入目录,开始下载nginx源码包

cd  /nginx

curl -O https://nginx.org/download/nginx-1.26.1.tar.gz

#解压源码包

tar  xf  nginx-1.26.1.tar.gz

cd  nginx-1.26.1

#解决依赖的软件包

yum install  gcc   pcre-devel  openssl-devel -y

#配置工作

./configure  --prefix=/usr/local/nginx-1  --user=limingzhe  --group=limingzhe   --with-http_ssl_module  --with-http_v2_module  --with-threads   --with-stream   --with-http_stub_status_module

#启动2个进程去编译

make  -j  2

#安装编译,将前面编译好的二进制文件和配置文件复制到/usr/local/nginx-1目录下

make  install

#新建用户limingzhe

useradd  limingzhe  -s  /sbin/nologin

#修改PATH环境变量,增加nginx的安装目录,方便找到安装的nginx

echo 'PATH=/usr/local/nginx-1/sbin/:$PATH'  >>/etc/profile

source  /etc/profile

#启动nginx

/usr/local/nginx-1/sbin/nginx

#firewalld and selinux

#stop firewall和设置下次开机不启动firewalld

service firewalld stop

systemctl disable firewalld

#临时停止selinux和永久停止selinux

setenforce 0

sed  -i '/^SELINUX=/ s/enforcing/disabled/' /etc/sysconfig/selinux

4.解释文件含义

[root@web-2 nginx-1]# cd /usr/local/nginx-1/

[root@web-2 nginx-1]# ls

conf  html  logs  sbin

conf  存放配置文件的目录

html  存放网站网页的目录

logs  存放日志的

sbin 存放二进制文件

5.执行nginx

[root@web-2 sbin]# ./nginx        执行nginx

nginx: [emerg] getpwnam("limingzhe") failed        发现没有用户limingzhe

[root@web-2 sbin]# id  limingzhe        查找也找不到

id: limingzhe: no such user

新建用户

[root@web-2 sbin]# useradd  limingzhe -s /sbin/nologin        新建用户limingzhe

[root@web-2 sbin]# ./nginx        执行nginx成功

6.在web1上验证脚本是否可以执行

[root@web-1 nginx]# bash install_nginx.sh        执行脚本

[root@web-1 nginx]# source  /etc/profile        在当前终端里执行文件/etc/profile 加载PATH环境变量

然后查看端口和进程检查nginx是否安装成功并启动

三、设置nginx开机启动

/etc/rc.local文件,linux在启动的最后阶段会执行这个脚本里的命令

[root@web-2 nginx-1]# vim /etc/rc.local

#开启自动启动编译安装的nginx

 /usr/local/nginx-1/sbin/nginx
[root@web-2 nginx-1]# chmod  +x /etc/rc.d/rc.local

然后就完成了开机自启动nginx的设置,可以reboot重启一下服务器后查看进程和端口检查是否启动了nginx

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值