使用Nginx代理HTTP请求

Nginx基础代理

server {
    listen       8000; // 监听端口
    server_name  test.com; // 监听地址
    
    location / {    // 代理配置
        proxy_pass http://127.0.0.1:8888 // 代理地址
        proxy_set_header Host $host  
        // 设置代理请求头(host在到达目的主机时默认为代理地址,该设置可以将其更改为监听地址)
    }
}

Nginx代理配置

配置缓存

proxy_cache_path cache levels=1:2 keys_zone=my_cache:10m; // 配置缓存路径
location / {
	proxy_cache my_cache; // 配置缓存
}

如果服务端有返回Cache-Control头,且值包含max-ages-max-age,则前者将用于浏览器缓存,后者用于代理服务器缓存。

如果请求头有修改,则不会使用缓存。

HTTPS解析

在这里插入图片描述

使用Nginx部署HTTPS

使用指令生成证书

openssl req -x509 -newkey rsa:2048 -nodes -sha256 -keyout localhost-privkey.pem -out localhost-cert.pem

配置https

server {
  listen         443; // https默认端口为443
  server_name    test.com;
  
  ssl on; // 打开ssl
  ssl_certificate_key ../certs/localhost-privkey.pem; // 私钥地址
  ssl_certificate     ../certs/localhost-cert.pem;    // 公钥地址
}

代理http到https

server {
  listen        80 default_server;
  listen        [::]:80 default_server;
  server_name   test.com;
  return 302 https://$server_name$request_uri;
}

HTTP2

http2的优势

  • 信道复用
  • 分帧传输
  • Server Push

Nginx开启http2

server {
  listen             443 http2; // http2现在还只能在https的基础上开启
  http2_push_preload on; // 开启服务端推送
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值