下载 安装 Nginx
1-环境准备
Nginx
是C
语言开发,建议在Linux
上运行,也可以安装Windows
版本。本篇使用CentOS 7
(最小安装版)作为安装环境,采用编译安装方式。
1.1-安装 gcc
# 检查 gcc
gcc --version
# 安装nginx需要将官网下载的源码进行编译,编译依赖 gcc 环境
# yum install gcc -y
yum install -y gcc-c++
1.2-安装 pcre-devel
# PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。
# nginx的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库。
# pcre-devel是使用 pcre 开发的一个二次开发库,nginx也需要此库。
yum install -y pcre pcre-devel
1.3-安装 zlib-devel
# zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,nginx需要此库。
yum install -y zlib zlib-devel
1.4-安装 openssl-devel
# OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,
# 并提供丰富的应用程序供测试或其它目的使用。
# nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
yum install -y openssl openssl-devel
2-下载 Nginx
2.1-官方下载
2.2-百度云下载
3-安装 Nginx
3.1-解压源码包
tar -zxvf /data/targz/nginx-1.17.8.tar.gz -C /data/targz/
3.2-编译安装 Nginx
Nginx
编译目录:cd /data/targz/nginx-1.17.8
Nginx
编译配置:# 配置信息 # --user --group 指定work进程启动的用户 用户组 # --prefix 指定安装路径 # --with-debug 指定日志等级 # --with-http_stub_status_module 增加监控模块 # --with-http_ssl_module 启用 https 支持 # --with-http_gzip_static_module 支持在线实时压缩输出数据流 # --with-stream ./configure \ --user=root --group=root \ --prefix=/data/opt/nginx-1.17.8 \ --with-debug \ --with-http_stub_status_module \ --with-http_ssl_module \ --with-http_gzip_static_module \ --with-stream \ --with-stream_ssl_module
- 编译
Nginx
:make && make install
Nginx
软件目录
3.3-启动 Nginx
/data/opt/nginx-1.17.8/sbin/nginx
3.4-访问 Nginx
4-常用命令
4.1-查看 Nginx 版本
# 查看 nginx 版本
/data/opt/nginx-1.17.8/sbin/nginx -v
4.2-启动 Nginx
# 启动 nginx
/data/opt/nginx-1.17.8/sbin/nginx
# 启动 nginx 指定配置文件(-c:configuration)
/data/opt/nginx-1.17.8/sbin/nginx -c /data/opt/nginx-1.17.8/conf/nginx.conf
4.3-更新 Nginx 配置
# nginx 更新配置
/data/opt/nginx-1.17.8/sbin/nginx -s reload
4.4-停止 Nginx
# 停止 nginx
/data/opt/nginx-1.17.8/sbin/nginx -s stop
/data/opt/nginx-1.17.8/sbin/nginx -s quit
5-常见问题
5.1-Nginx 无法访问
5.1.1-是否启动成功
ps -ef|grep nginx
5.1.2-是否占用系统 80 端口
# yum -y install net-tools
netstat -lnp|grep 80
5.1.3-是否可以 ping 通服务器
5.1.4-是否可以连接 ip:port
5.1.5-关闭 CentOS 防火墙
CentOS 7
默认使用 firewall
作为防火墙
# 防火墙状态
firewall-cmd --state
# 停止 firewall
systemctl stop firewalld.service
# 禁止 firewall 开机启动
systemctl disable firewalld.service
备注:
# 查看已开放端口
firewall-cmd --list-ports
# 开启端口:--zone #作用域 --add-port=80/tcp #添加端口(端口/通讯协议) --permanent #永久生效(无此参数重启后失效)
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 关闭 selinux:将 etc/selinux/config 文件中 SELINUX=enforcing 改为 SELINUX=disabled
vi /etc/selinux/config