关键词搜索

源码搜索 ×
×

nginx转发https到http

发布2022-04-08浏览14648次

详情内容

微信小程序和公众号,要求外链的页面或API必须使用https。https意味着需要证书,在测试阶段,很不方便,因此部署的测试站点都是http。于是尝试在现有的https站点中,用nginx转发请求到只有http的测试站点。

方法众所周知,在nginx.conf中添加一个转发规则。

	server {
    	listen      80;
    	server_name 服务器IP;

		。。。
	}
	
	server {
       	listen 443 ssl;
       	server_name 服务器IP;
      
      	。。。
      	
     	location /test/ {#注意一定要以“/”结尾,否则 /test/*** 一律跳到/test
        	proxy_pass   http://测试的HTTP站点IP:端口/;
        	proxy_redirect off;
        	proxy_set_header X-Real-IP $remote_addr;
        	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
   	}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20

这样的话,我们在小程序或公众号中用类似 https://www.abc.com/test/**** 的方式请求,nginx能为我们转发到相应的测试站点上。注意转发规则中,一定要以“/”结尾,否则 /test/*** 一律被跳到/test。

nginx真是一款神器,web服务器,代理,负载均衡,转发,我还看到有用它来缓存天地图瓦片的。几乎无所不能。还短小精悍,资源消耗极低。网上查找nginx的历史,发现没有几个小孩子扯的清,但我早在2001年的时候,就听说过它。那时候网易啊啥的互联网大站点在使用。可惜我一直睁眼瞎,缺乏好奇心和上进心,浑浑噩噩。值得一提的是,nginx是俄罗斯人写的。毛子虽然这段时间在西方成为众矢之的,但其理工类,尤其是计算机、数学简直是神一般的存在。我去年在阮一峰的每周博客上,还看到俄罗斯的联邦总理跑到大学讲解数学题。当然俄罗斯的艺术人文也很强。艺术凭直觉,理工讲求逻辑,这两个方面,战斗民族和谐统一,令人佩服。

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载