首先需安装nginx依赖库
1.安装gcc g++的依赖库
apt-get install build-essential
apt-get install libtool
2.安装pcre依赖库
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
3.安装zlib依赖库
apt-get install zlib1g-dev
4.安装ssl依赖库
apt-get install openssl
安装Nginx
更新 apt 源,安装nginx
sudo apt-get update
sudo apt-get install nginx
配置防火墙
开始测试Nginx前,我们需要配置防火墙,以便允许外界访问nginx服务。Nginx在安装的时候使用ufw注册自己作为一个服务,这样对nginx的访问就会变得很容易。
显示所有ufw应用的配置:
sudo ufw app list
输出的列表
Available applications:
Nginx Full //: 这个配置打开 80端口和443端口
Nginx HTTP //: 这个配置只打开80 (普通, 未加密通信)
Nginx HTTPS //: 这个配置只打开 443 (TLS/SSL 加密通信 )
OpenSSH
一般来说我们应该配置最严的限制,因为本文我们还没有配置SSL,所以我们只打开80端口。
我们执行:
sudo ufw allow 'Nginx HTTP'
检查web server
systemctl status nginx
输出
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en
Active: active (running) since Fri 2018-12-07 13:10:57 CST; 6min ago
Main PID: 8634 (nginx)
CGroup: /system.slice/nginx.service
├─8634 nginx: master process /usr/sbin/nginx -g daemon on; master_pro
└─8635 nginx: worker process
服务器配置:
/etc/nginx: nginx配置文件目录。所有的nginx配置文件都在这里。
/etc/nginx/nginx.conf: Nginx的主配置文件. 可以修改他来改变nginx的全局配置。
/etc/nginx/sites-available/: 这个目录存储每一个网站的"server blocks"。nginx通常不会使用这些配置,除非它们陪连接到 sites-enabled 目录 (see below)。一般所有的server block 配置都在这个目录中设置,然后软连接到别的目录 。
/etc/nginx/sites-enabled/: 这个目录存储生效的 "server blocks" 配置. 通常,这个配置都是链接到 sites-available目录中的配置文件
/etc/nginx/snippets: 这个目录主要可以包含在其它nginx配置文件中的配置片段。重复的配置都可以重构为配置片段。
nginx 重新加载配置
nginx -s reload
// reload的原理:
// 1 - 首先检查配置语法是否有误
// 2 - 主进程尝试应用配置
// 3 - 如果成功:启动新工作进程,并关闭旧的进程
// 4 - 如果失败:主进程配置回滚