nginx的安装和使用

window下使用nginx
# 杀死所有nginx进程:
taskkill /IM nginx.exe /F
# 进入nginx目录
cd D:\develop\nginx-1.14.2
# 开始服务
start nginx
# 校验语法错误
nginx -t -c conf/nginx.conf
# 重新加载配置文件
nginx -s reload
# 退出
nginx -s quit
linux下使用nginx

linux下编译nginx可能会包xxx命令不存在,安装这些xxx包就可以使用了。

# 解压nginx到该目录
cd /u01/app/back/server/nginx-1.14.2
# 编译nginx
./configure --prefix=/u01/app/server/nginx-1.14.2
# 安装
make
make install
# 验证配置文件
/u01/app/server/nginx-1.14.2/sbin/nginx -t
# 启动nginx
/u01/app/server/nginx-1.14.2/sbin/nginx
# 备份配置
cd /u01/app/server/nginx-1.14.2/conf
cp -r nginx.conf nginx.conf.bak.original
# 修改配置后,重启nginx
/u01/app/server/nginx-1.14.2/sbin/nginx -s reload
# 查看nginx是否启动
ps -ef | grep nginx
如何配置nginx反向代理
  1. 找到nginx.conf下的server节点,listen里面填的是端口,这里端口我设置为9527。
  2. 假设我本地有这样一张图片D:/upload/images/a.jpg,我们就可以这样访问。
    http://localhost:9527/images/a.jpg.
# 方式一
location /images/ {
	root D:/upload;
}
# 方式二
location /images/ {
	alias D:/upload/images/;
}
  1. 假设我另外一台服务器有图片D:/upload/images/a.jpg,我们就可以这样访问。
    http://localhost:9527/images/a.jpg
# 本地nginx配置文件
location /images/ {
      proxy_pass http://xxx.xxx.xxx.xxx:9260/images/;
}
# 远程nginx配置文件
location /images/ {
    root D:/upload;
}
  1. 如果发现远程一直访问不了,可能是linux没有开放端口
# 开放端口
firewall-cmd --zone=public --add-port=远程服务器nginx的端口/tcp --permanent
# 重新加载防火墙
firewall-cmd --reload
如何设置负载均衡

用例子来演示如何进行负载均衡,准备3个应用,端口为9001,9002,9003,nginx需要做以下配置。

upstream test {
	ip_hash; //负载均衡策略
	server 127.0.0.1:9001;
	server 127.0.0.1:9002;
	server 127.0.0.1:9003;
}	
   server {
       listen       9000;
       server_name  localhost;

       location / {
           root   html;
           index  index.html index.htm;
		proxy_pass http://test;
       }
    }

集中负载均衡策略
默认:轮询
按时间顺序分配到不同应用
ip_hash
根据每个访问者的ip决定访问哪一个应用,这种策略会固定ip始终访问某一个应用,这个策略可以保持session.
least_conn
访问连接数少的应用
fair
根据响应时间来分配

session丢失怎么办
location /projectB/ {
 proxy_pass http://192.168.1.1/projectA/;
 proxy_cookie_path /projectA /projectB;
}
如何跳转到另一个代理,并改变路径

访问 http://ip ->地址自动编程 http://ip/projectA

location / {
 index projectA
}

location /projectA/ {
 proxy_pass http://192.168.1.1/projectA/;
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值