Nginx概述
是一款轻量级的web服务器,反向代理服务器,占用内存少,并发能力强悍(10万并发)
Nginx默认端口80
Nginx只适合静态页面PHP,不能运行java程序
Linux下Ngin的安装,安装版本:nginx-1.16.1.tar.gz
1,nginx是基于c语言开发的,所以需要安装c语言的编译环境
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
2,下载Nginx安装包
wget https://nginx.org/download/nginx-1.16.1.tar.gz
3,解压nginx压缩包
tar -zxvf nginx-1.16.1.tar.gz -C /usr/local
4,配置Nginx编译环境
cd /usr/local/nginx-1.16.1
./configure --prefix=/usr/local/nginx
5,编译安装
make & make install
6,进入
cd /usr/local/nginx/sbin/
7,查看版本
./nginx -v
7.1 检查配置文件是否正确
./nginx -t
8,启动
./nginx #相当于windows版本Nginx的双击操作
9,查看nginx的进程是否存在, nginx服务启动后,默认就会有两个进程
ps -ef|grep nginx 查看nginx进程
关闭防火墙
systemctl stop firewalld
或者开放80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
10,云服务器开放80端口
温和停止
./nginx -s stop
或者暴力停止
ps -ef|grep nginx
kill -9 进程id
重启Nginx
./nginx -s reload
windows下Ngin的安装
绿色免安装,解压即用 解压后进入双击,nginx.exe ,
关闭nginx,在任务管理器(ctrl+alt+delete)进程里关闭
Nginx环境变量配置
非必须配置
1,打开配置文件
vim /etc/profile
2,搜索path变量位置
/export PATH
3,PATH环境变量中增加nginx的sbin目录,以冒号跟别的环境变量分隔
新增/usr/local/nginx/sbin:
4,配置文件
source /etc/profile
Nginx配置目录文件结构
conf 配置文件的存放目录
conf/nginx.conf Nginx的核心配置文件 conf下有很多nginx的配置文件,我们主要操作这个核心配置文件
html 存放静态资源(html, css, ) 部署到Nginx的静态资源都可以放在html目录中
logs 存放nginx日志(访问日志、错误日志等)
sbin/nginx 二进制文件,用于启动、停止Nginx服务
Nginx反向代理配置
Nginx部署静态资源将文件复制到Nginx安装目录下的html目录中
cd /usr/local/nginx/html
Nginx反向代理配置
进入nginx的安装目录,并编辑配置文件nginx.conf
cd /usr/local/nginx/conf/
vim nginx.conf
#upstream指令可以定义一组服务器,targetserver 服务器集群命名自定义
upstream targetserver{
server 192.168.200.201:8080; #不同服务器IP和端口
server 192.168.200.201:8081;
}
server {
listen 80; #访问Nginx的端口
server_name localhost; #服务器名称,自定义
location / { #有访客 ,反向代理转发到http://targetserver 下根据负载均衡策略访问不同服务器
proxy_pass http://targetserver;
}
}
配置完后重启Nginx
nginx -s reload
常用负载均衡策略
轮询 默认方式
weight 根据权重分发请求,权重大的分配到请求的概率大 server 192.168.200.201:8080 weight=10;
least_conn 哪个服务器当前处理的连接少, 请求优先转发到这台服务器
fair 依据响应时间方式优先把请求分发给处理请求时间短的服务器