nginx代理静态资源

这里,我们试图搞清楚几个概念:web服务器、nginx、代理、反向代理、静态资源

如何获取服务器上的资源

现在我们知道了

互联网其实没有什么神秘的

就是客户端向服务器请求资源

服务器按照要求返回,仅此而已

如果我现在有一台具有公网ip的centos服务器

假设我知道在该服务器上有如下路径:/ststics 

我如何去获取上面的资源呢?

就像打开网站一样

我们试着在浏览器输入ip/ststics

不出意外的话

你会看到上面的拒绝连接返回

是的,因为服务器不知道该干什么

web 服务器

上面我们虽然有了一台物理的机器

但是这台机器目前还无法理解浏览器发过来的资源请求

于是,出现了这样一种软件

安装在服务器上,可以监听特定的端口

并对特定的请求作出相应回应

这种软件就叫做web服务器

常见的:nginx、apache

我们试着再次通过浏览器访问安装了web服务器的服务器

服务器返回了一个html文件,上面说当前目录不能访问

至少,服务器知道我们在干啥,并且有反应了

代理?反向代理?

现在我们知道了

web服务器就是物理服务器的库管员

所有来自客户端的请求都会先经过web服务器

web服务器从物理机器上获取资源后再返回给客户端

在客户端看起来就好像是在跟web服务器打交道

于是web服务器就是客户端的代理,代表客户端去物理机器上取资源

同时,web服务器也是物理服务器的反向代理,代理物理服务器响应客户端的请求

代理和反向代理,就是两个名词而已

一个库管员的自我修养

作为一个库管员,最重要的,我们要知道每种资源的位置,以及,如果这不是一个简单的拿货,而是要加工处理一个零件,应该找谁

我们会有这样一个文件,上面写着所有问题的答案

他被业内称为《库管员的自我修养》

也叫配置文件,我们以nginx为例

篮筐中写着只监听80端口的请求,其他端口不理他

黄框中写着,如果访问的是根目录,则去根目录下找index.php等文件

红框中写着,如果请求的是xx.php文件,则转给本地的9000端口上的人,并告9000端口上的人,用他那的index.php来找xx.php并按照他们那儿方式来处理

绿框中写着,如果请求的是js、css或者其他的静态资源,则去相应的路径下寻找

比如,我们的html文件中写着<link href="js/iCheck/skins/minimal/minimal.css" rel="stylesheet">

那么,就去/usr/share/nginx/html/value/application/views/admin/下面的js/iCheck/skins/minimal/minimal.css找

这就是nginx的静态资源反向代理

对了,上面9000端口上的人是谁呢?

php-fpm呀!

 还不止一个呢!是一个工作小组!

posted @ 2019-10-26 20:38  jiage666  阅读(8020)  评论(0编辑  收藏  举报