简介
Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。
注意:nginx安装完成后,也没有errror,却无法访问很可能是防火墙对端口的拦截
Ubuntu18.04 关闭防火墙
关闭
sudo ufw disable
开启
sudo ufw enable
Centos7 关闭防火墙
关闭
systemctl stop firewalld.service
开启
systemctl start firewalld.service
安装依赖
1.安装gcc g++的依赖库(C语言运行环境)
安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc安装nginx需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc
ubuntu平台可以使用如下命令(并没有直接安装gcc,这是因为build-essential已经内嵌了gcc环境)
apt-get install build-essential
apt-get install libtool
centos平台编译环境使用如下指令
yum install gcc gcc-c++
安装make
yum -y install gcc automake autoconf libtool make
2.安装 pcre依赖库
PCRE(Perl Compatible Regular Expressions)是一个Perl库,包括 perl 兼容的正则表达式库。nginx的http模块使用pcre来解析正则表达式,所以需要在linux上安装pcre库
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
centos平台编译环境使用如下指令
yum install -y pcre pcre-devel
3.安装 zlib依赖库
zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip,所以需要在linux上安装zlib库
apt-get install zlib1g-dev
centos平台编译环境使用如下指令
yum install -y zlib zlib-devel
4.安装 ssl依赖库
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。nginx不仅支持http协议,还支持https(即在ssl协议上传输http),所以需要在linux安装openssl库
apt-get install openssl
centos平台编译环境使用如下指令
yum install -y openssl openssl-devel
安装Nginx
下载Nginx:(根据个人喜好将压缩包放在opt下的nginx目录下)(http://nginx.org)
wget http://nginx.org/download/nginx-1.15.10.tar.gz
wget 是一个从网络上自动下载文件的自由工具,支持通过 HTTP、HTTPS、FTP 三个最常见的 TCP/IP协议 下载,并可以使用 HTTP 代理
解压:
tar -zxvf nginx-1.15.10.tar.gz
进入解压目录:
cd nginx-1.15.10
#配置路径:
./configure --prefix=/usr/local/nginx
编译,安装:
make
注意:这里可能会报错,提示“pcre.h No such file or directory”,具体详见:http://stackoverflow.com/questions/22555561/error-building-fatal-error-pcre-h-no-such-file-or-directory
需要安装 libpcre3-dev,命令为:sudo apt-get install libpcre3-dev
make install
启动Nginx:
去到Nginx安装目录下
cd /usr/local/nginx/sbin/
启动:
./nginx
访问 80:
查询nginx进程:
ps -ef|grep nginx
Nginx相关常用命令
启动,停止Nginx
目录下:/usr/local/nginx/sbin
启动 ./nginx
停止 ./nginx -s stop
./nginx -s quit
nginx重新加载配置
目录下: /usr/local/nginx/sbin
重新加载: ./nginx -s reload
指定配置文件: ./nginx -c /usr/local/nginx/conf/nginx.conf
检查配置文件是否正确
目录下: /usr/local/nginx/sbin
./nginx -t
显示帮助信息
目录下: /usr/local/nginx/sbin
./nginx -h