当前位置: 首页 > news >正文

顶尖网站设计公司山东泰安

顶尖网站设计公司,山东泰安,大一python基础编程题,兰州公司做网站Nginx 是一个高性能的开源反向代理服务器,可以用于处理跨域请求、负载均衡和缓存等功能。在本文中,我们将介绍如何使用 Nginx 配置文件来实现反向代理。 我们可以实现跨域请求的处理,同时保护用户的隐私和安全。此外,Nginx 还…

 Nginx 是一个高性能的开源反向代理服务器,可以用于处理跨域请求、负载均衡和缓存等功能。在本文中,我们将介绍如何使用 Nginx 配置文件来实现反向代理。
    我们可以实现跨域请求的处理,同时保护用户的隐私和安全。此外,Nginx 还可以通过添加其他配置指令来实现更多功能,如负载均衡和缓存等。

举例1:

1、用户访问   http://x.com/test/api/oauth2/......  需要请求到 http://y.com/api/oauth2/......      去除 test

server { listen 80; server_name x.com; location /test/{ rewrite ^/test/(.*)$ /$1 break; proxy_pass http://y.com; } }


 
注意:

listen 80;:监听端口号 80,表示该服务器将接收来自客户端的 HTTP 请求。
 
server_name x.com; :指定该服务器的域名为 x.com,表示当客户端请求的域名为 x.com 时,将使用该服务器进行处理。
location /test/:匹配以 /test/ 开头的请求路径。
rewrite ^/test/(.*)$ /$1 break;:将匹配到的请求路径中的 /test/ 替换为空,即去掉 /test/ 部分,然后继续处理后续的指令。
proxy_pass http://y.com;:将经过重写后的请求转发到 http://y.com,即将请求代理到 http://y.com 上进行处理。
总体来说,这段配置的作用是将客户端请求中以 /test/ 开头的路径重写为去掉 /test/ 部分的路径,并将重写后的请求转发到 http://b.com 进行处理。

举例2:

server {# 对外暴露 80 端口listen    80;server_name x.com;# 后端API地址暴露为:http://x.com/apislocation /apis {proxy_pass   http://127.0.0.1:8080/;proxy_pass_request_headers      on;# 重写URL 去除apisrewrite "^/apis/(.*)$" /$1 break;} 
}

这里的rewrite 就是为了去除URL中的/apis,实际的后端api中是没有这个参数的,但是为了做到在Nginx转发请求,前端需要加上这个参数,以便于区别

比如前端的请求地址是

http://x.com/apis/user
那么实际上经过Nginx转发后请求的地址是

http://127.0.0.1:8080/user
rewrite “^/api/(.)”/1 break,路径重写:

(1)"^/api/(.)$":匹配路径的正则表达式,用了分组语法就是*(.)**,把/api/以后的所有部分当做1组;
(2) /$1:重写的目标路径,这里用$1引用前面正则表达式匹配到的分组(组编号从1开始,也就是api),即/api/后面的所有。这样新的路径就是除去/api/以外的所有,就达到了去除/api前缀的目的
break:指令,常用的有2个,分别是:last、break;

(1)last:重写路径结束后,将得到的路径重新进行一次路径匹配;
(2)break:重写路径结束后,不再重新匹配路径。

总结

1.rewrite和location功能有点像,都能实现跳转。主要区别在于rewrite是在同一域名内更改获取资源的路径,而location是对一类路径做控制访问或反向代理,可以proxy_pass到其他服务器。

2.下面是可以用作if判断的全局变量
$content_type : 请求头中的Content-Type字段。
$document_root : 当前请求在root指令中指定的值。
$host : 请求主机头字段,否则为服务器名称。
$http_user_agent : 客户端agent信息
$http_cookie : 客户端cookie信息
$limit_rate : 这个变量可以限制连接速率。
$request_method : 客户端请求的动作,通常为GET或POST。
$remote_addr : 客户端的IP地址。
$remote_port : 客户端的端口。
$remote_user : 已经经过Auth Basic Module验证的用户名。
$request_filename : 当前请求的文件路径,由root或alias指令与URI请求生成。
$scheme : HTTP方法(如http,https)。
$server_protocol : 请求使用的协议,通常是HTTP/1.0或HTTP/1.1。
$server_addr : 服务器地址,在完成一次系统调用后可以确定这个值。
$server_name : 服务器名称。
$server_port : 请求到达服务器的端口号。
$request_uri : 包含请求参数的原始URI,不包含主机名,如:”/foo/bar.php?arg=baz”。
uri:不带请求参数的当前URI,uri不包含主机名,如”/foo/bar.html”。
documenturi : 与uri:与uri相同。

http://www.yayakq.cn/news/706431/

相关文章:

  • 宝塔做两个网站6网站开发课表查询
  • 南昌定制网站公司seo零基础视频教程
  • 企业官网建站流程路南网站建设
  • 网站伪静态如何配置文件电商引流推广方法
  • 国外做行程的网站招聘门户网站是什么意思
  • 怎样看一个网站是谁做的建设网站的流程可分为哪几个阶段
  • 什么样的网站快速盈利湖北网站科技建设
  • 佳木斯哈尔滨网站建设介绍好的电影网站模板下载
  • 微信网站可以免费做么郑州专业网站优化
  • php网站开发演讲稿泰州做网站哪家好
  • 宁国网站建设长治网站制作的流程
  • 网站效果图怎么做做游戏视频网站用什么程序好
  • 企业营销型网站推广网站开发网页前置开发
  • 湖北响应式网站建设设计wordpress符号
  • 南开做网站的公司软件开发阶段包括哪几个阶段
  • 电子商务网站开发与应用的介绍wordpress 固定导航菜单
  • 毕节市交通建设集团网站美工是做什么的
  • 甘德县wap网站建设公司十大正规兼职平台
  • 给女朋友做的网站移动端网页设计图片
  • 备案网站有哪些wordpress在哪
  • 学校网站建设风险分析seo推广计划类型可以分为什么
  • 电子商务网站策划 ppt网站屏蔽ip地址
  • 做3d图的网站怎么制作网站?
  • 网站的建设入什么科目品牌建设可以从哪方面入手
  • 丁香人才网官方网站网站建设销售还能做吗
  • 肇庆建网站服务个人网站备案代理
  • 做网站南昌如何做市场推广方案
  • 住房建设局子网站品牌建设新时代
  • 北京建站开发4网站免费建站
  • 观影楼网站网站logo用什么来做