1,性能比apache高
2,可以做反向代理[ 可以通过代理做 负载均衡,缓存,授权,限流,内外网隔离等等]
3,高度的模块设计
下载官网:http://nginx.org/en/download.html
无需登录 992 KB,下载速度良好
适用于Linux
1,解压缩
tar -zxvf nginx-1.14.2.tar.gz
得到文件夹 nginx-1.14.2
2,做一些配置
创建文件夹/liewen/nginx/nginx [nginx配置文件目录,可自定义]
进入/liewen/nginx/nginx-1.14.2做一些配置
./configure --prefix=/liewen/nginx/nginx
如果报错 checking for C compiler ... not found,那先执行下面两句
yum -y install gcc
yum -y install gcc-c++
再执行./configure --prefix=/liewen/nginx/nginx 可能依然会有些 not fond,
继续安装依赖的第三方的包
yum install pcre-devel
yum install zlib-devel
再执行./configure --prefix=/liewen/nginx/nginx出现
Configuration summary并且没有报错,表示配置部分已经做好。
3,安装
make && make install
4,运行,访问
/liewen/nginx/nginx/sbin/nginx
http://106.12.221.162/ 出现 Welcome to nginx!,表示安装成功。
默认80端口【可能导致当前服务器其他服务不能访问】
修改配置后重载
/liewen/nginx/nginx/sbin/nginx -s reload
5,停止
/liewen/nginx/nginx/sbin/nginx -s stop
核心配置文件解读在这里[自定义的配置目录下]
/liewen/nginx/nginx/conf/nginx.conf
该文件分3部分
1,main
2,event
3,http
3.1 server
3.1.1 基于IP的虚拟主机
3.1.2 基于端口号的虚拟主机
server {
listen 8081;
server_name localhost;
location / {
root html;
index index.html;
}
}
http://106.12.221.162:8081/会访问到咱自己的自定义的配置目录下 的html[/liewen/nginx/nginx/html/index.html]
3.1.3 基于域名的虚拟主机[第一个是主域名,其他是二级域名(在主域名前加一个前缀)]
server {
listen 80;
server_name www.gupaoedu.com; #这里可以配多个,都会转发到下面的二级域名
location / {
root html;
index index.html;
}
}
server {
listen 80;
server_name ask.gupaoedu.com;
location / {
root html;
index ask.html;
}
}
server {
listen 80;
server_name bbs.gupaoedu.com;
location / {
root html;
index bbs.html;
}
}
本地操作:
Windows/system2/driver/etc/hosts (避开真实的域名解析)
106.12.221.162 www.gupaoedu.com
106.12.221.162 ask.gupaoedu.com
106.12.221.162 bbs.gupaoedu.com
cmd ipconfig /flushdns
/liewen/nginx/nginx/html 创建2个html ask.html bbs.html
http://www.gupaoedu.com/
http://bbs.gupaoedu.com/
http://ask.gupaoedu.com/
location 语法
location =/url 精准匹配
location ^-/url 前缀正则匹配
location -/url 正则匹配
location / 通用匹配
规则的优先级(为了避免冲突。如果冲突无法避免则会主动报错)
1,精准匹配是优先级最高的
2,普通匹配(长度最长的优先)
3,正则匹配
实际适用建议...(略)
Nginx模块...(略)