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