在安装Nginx之前需要安装依赖的包
一. gcc 安装
安装 Nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:
yum install gcc-c++
二. PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。Nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。Nginx也需要此库。命令:
yum install -y pcre pcre-devel
三. zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, Nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。
yum install -y zlib zlib-devel
四. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
Nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。
或者直接使用: yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker 来安装
下载Nginx 源码
wget http://Nginx.org/download/Nginx-1.16.0.tar.gz
解压
tar Nginx-1.16.0.tar.gz
配置
./configure --prefix=/usr/local/Nginx/ --with-http_ssl_module --with-http_stub_status_module
在解压目录下执行,
--prefix=/usr/local/Nginx/ 指定安装目录
--with-http_ssl_module --with-http_stub_status_module 指定安装的模块
可通过解压目录下的Nginx-1.16.0/auto/options文件查看默认安装的模块,YES表示默认安装,cat Nginx-1.14.0/auto/options | grep YES
--with-select_module
--without-select_module
第一个是编译时启用这个模块,第二个用来关闭这个模块。即可选模块有两个开个,一个是--with开头的启用开关,一个是--without开头的禁用开关
安装
make & make install
启动 Nginx
进入安装目录下执行 ./sbin/Nginx
其他常用命令
cd sbin
./Nginx #启动
./Nginx -s stop #关闭
./Nginx -s reload #重新加载
检查服务是否正常
netstat -tunlp |grep 80
curl -I 127.0.0.1
解决外网不能访问的问题
开启80端口访问权限
firewall-cmd --zone=public --add-port=80/tcp --permanent 开启80端口
systemctl stop firewalld.service
systemctl start firewalld.service 关闭并重启防火墙
firewall-cmd --zone=public --list-ports 查看打开的端口
firewall-cmd --reload 重新加载