nginx转发https到http

2022-11-02 15:14:29 浏览数 (1)

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

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

代码语言:javascript复制
	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; } } 

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

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

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/180364.html原文链接:https://javaforall.cn

0 人点赞