CentOS7 安装配置 Nginx 服务

56 阅读4分钟

CentOS7 安装配置 Nginx 服务

安装依赖

安装 gcc

Nginx 源码编译依赖于 gcc 环境,如果没有安装 gcc 环境则可以执行下方命令安装

//查看gcc版本
gcc -v
//安装命令
yum install gcc-c++

安装 PCRE pcre-devel

Nginx 的 http 模块使用 pcre 来解析正则表达式,pcre-devel 是使用 pcre 开发的一个二次开发库,Nginx 也需要这个库。

//安装命令如下:
yum install -y pcre pcre-devel

安装 zlib

zlib 库提供了很多种压缩和解压缩方式,Nginx 使用 zlib 对 http 包的内容进行 gzip

//安装命令如下:
yum install -y zlib zlib-devel

安装 openssl

openssl 是 web 安全通信的基石,OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用,Nginx 不仅支持 http 协议,还支持 https(即在 ssl 协议上传输 http)

//安装命令如下:
yum install -y openssl openssl-devel

安装 Nginx

Nginx官网地址:nginx.org/en/download…

FileZilla官网地址:www.filezilla.cn/

方式一(使用命令直接官网安装,推荐)

1.使用 wget 命令下载 Nginx 压缩包

//目前稳定版本是1.18.0,下载版本号可根据目前官网最新稳定版自行调整
wget -c https://nginx.org/download/nginx-1.18.0.tar.gz

2.把压缩包解压到/usr/local(具体解压目录可自行指定)

//解压
tar -zxvf  nginx-1.18.0.tar.gz

//找到当前下载的Nginx压缩包,可通过命令查找,会直接列举出来当前的目录
whereis nginx

3.进入解压后的目录

cd /usr/local/nginx-1.18.0

4.配置

//使用默认配置,即执行下方命令
./configure

//但使用默认配置,在安装配置SSL证书时nginx会报错,若需要配置SSL证书,则执行下方命令
 ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

5.编译安装

//依次执行下方的两条命令
make
make install

6.启动 Nginx

//进入当前的安装路径
cd /usr/local/nginx/sbin
//启动Nginx,可通过如下命令启动
./nginx

7.查看 Nginx 进程

//通过执行下方命令,若出现进程号,则表示Nginx启动成功
ps aux|grep nginx

方式二(通过 docker 安装)

//查看当前CentOS的内核版本
cat /etc/redhat-release

//1.拉取官方最新镜像,默认是拉取最新镜像,即latest
docker pull nginx
//拉取指定镜像
docker pull nginx:1.18.0

//2.查看本地镜像
docker images

//3.运行容器
docker run --name nginx-test -p 8080:80 -d nginx
//run 创建容器实例
//-- name 容器命名,此处指定为nginx-test
//-v 映射目录
//-d 设置容器后台运行
//-p 本机端口映射 将本地 8080 端口映射到容器内部的 80 端口。
//语句最后一个nginx是使用镜像的名称

//4.查看正在运行的容器
docker ps

//5.访问8080端口查看nginx是否启动成功

方式三(官网下载压缩包传输到 CentOS 后解压)

直接在 Nginx 官网下载压缩包,通过FileZilla这个免费开源的 ftp 软件将压缩包传输到当前的 CentOS7 中,然后解压,进入解压的目录中编译安装 Nginx,最后启动 Nginx

设置 Nginx 开启自启动

//在rc.local增加启动代码

//编辑rc.local文件
vim /etc/rc.local

//增加一行代码
/usr/local/nginx/sbin/nginx
//按下esc键后再输入:wq 保存当前设置

//设置执行权限
cd /etc
chmod 755 rc.local

配置域名映射

//进入Nginx配置文件目录,找到Nginx的配置文件 nginx.conf
cd /usr/local/nginx/nginx-1.18.0/conf

//修改Nginx配置文件
vim nginx.conf
//listen为监听的端口
listen       80;

//server_name为域名
server_name  sweetheartjq.cn;

//location是访问地址的设置,locahost也可以用服务器ip代替
location / {
proxy_pass http://localhost:8080;
}
//修改完成,重新加载配置文件
cd /usr/local/nginx/sbin/

//重启Nginx服务
./nginx -s reload

Nginx 常用命令

帮助命令:nginx -h
启动Nginx服务器 : nginx
查看进程: ps aux | grep nginx
配置文件路径:/usr/local/nginx/conf/nginx.conf
检查配置文件: nginx -t
指定启动配置文件: nginx -c /usr/local/nginx/conf/nginx.conf
暴力停止服务: nginx -s stop
优雅停止服务: nginx -s quit
重新加载配置文件: nginx -s reload
#启动、停止Nginx
cd /usr/local/nginx/sbin
./nginx     #启动
./nginx -s stop  #停止,直接查找nginx进程id再使用kill命令强制杀掉进程
./nginx -s quit  #退出停止,等待nginx进程处理完任务再进行停止
./nginx -s reload  #重新加载配置文件,修改nginx.conf后使用该命令,新配置即可生效

#重启Nginx,建议先停止,再启动
./nginx -s stop
./nginx

注意

若直接执行 nginx 命令出现提示:nginx 命令找不到(-bash:nginx:command not found)这种情况,是因为没有配置 nginx 的环境变量,可以按照下方操作解决。

// 1. 打开编辑/etc目录下的profile文件
	vim /etc/profile

//2.在文件夹的最后添加nginx的安装目录,即(本文中是/usr/local/nginx/sbin)
    PATH:$PATH:/usr/local/nginx/sbin
    export PATH

//3.保存并退出(先按下esc键,然后再输入:wq回车即可,注意是英文格式下的)

//4.重启使配置文件生效
    source /etc/profile

参考链接: