nginx代理实现静态资源访问的示例代码


Posted in Servers onJuly 07, 2022

一. 目标:

为了通过nginx请求静态资源(css、图片等),通过nginx代理进行页面预览。

二. 实现效果:

通过浏览器输入nginx代理地址以打开页面方式访问本地html文件,也可以通过访问代理路由访问接口实现页面预览功能.
注:我演示的是在本地windows开发环境下的配置

三. 具体配置

1. nginx配置本地静态工程代理

找到nginx配置文件nginx.conf,配置nginx代理

server{
listen       80;

#前端门户工程
location / {
    alias   D:/workspace/sc-multipl-static-web-project/;
    index  index.html;
}

说明:
D:/workspace/sc-multipl-static-web-project/ 是你的前端工程文件路径

保存配置文件并重启nginx,浏览器输入 localhost:80 验证

2. win10配置本地域名实现域名访问

域名访问实际上是通过对应ip地址,再通过ip访问服务的,如果我们没有开通互联网域名,可以通过配置本地域名映射模拟域名访问的(只在本机有效)
打开C:\Windows\System32\drivers\etc,找到hosts文件,如果没有则自己新增一个,以管理员身份打开编辑,输入

127.0.0.1 www.chen123.com

再打开nginx配置文件

server{
    listen       80;
    server_name  www.chen123.com;
    ssi on;
    ssi_silent_errors on;
    #前端门户工程
    location / {
        alias   D:/workspace/sc-multipl-static-web-project/;
        index  index.html;
    }
    
   }

保存配置文件并重启nginx,浏览器输入 localhost:chen123 验证

3.nginx配置页面预览路由

首先,你要先实现一个页面预览接口,返回格式为String类型,内容其实就是html的文本内容
再打开nginx配置文件

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;
    #cms页面预览路由
    upstream cms_server_pool {
        server 127.0.0.1:31001 weight=10;
    }

    server{
    listen       80;
    server_name  www.xuecheng.com;
    ssi on;
    ssi_silent_errors on;
    #前端门户工程
    location / {
        alias   D:/workspace/sc-multipl-static-web-project/;
        index  index.html;
    }
    #页面预览
    location /cms/preview/ {
        proxy_pass http://cms_server_pool/cms/preview/;
    }
    
   }
}

http://cms_server_pool/cms/preview/ 就是你要实现的页面预览接口,通过配置路由实现跳转到真实地址,

upstream cms_server_pool {
        server 127.0.0.1:31001 weight=10;
        #如果有多个服务器,可以写在下面,例如
        #server 127.0.0.1:31002 weight=10;
    }

保存配置文件并重启nginx,浏览器输入 http://cms_server_pool/cms/preview 验证

我本地的nginx配置如下

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;
    keepalive_timeout  65;

    #gzip  on;
    #cms页面预览路由
    upstream cms_server_pool {
        server 127.0.0.1:31001 weight=10;
    }

    server{
    listen       80;
    server_name  www.xuecheng.com;
    ssi on;
    ssi_silent_errors on;
    #前端门户工程
    location / {
        alias   D:/workspace/sc-multipl-static-web-project/;
        index  index.html;
    }
    #页面预览
    location /cms/preview/ {
        proxy_pass http://cms_server_pool/cms/preview/;
    }
   }
}

到此这篇关于nginx代理实现静态资源访问的示例代码的文章就介绍到这了,更多相关nginx 静态资源访问内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Servers 相关文章推荐
Nginx设置日志打印post请求参数的方法
Mar 31 Servers
Apache Calcite 实现方言转换的代码
Apr 24 Servers
Nginx虚拟主机的搭建的实现步骤
Jan 18 Servers
使用 Apache 反向代理的设置技巧
Jan 18 Servers
图文详解nginx日志切割的实现
Jan 18 Servers
Apache Pulsar结合Hudi构建Lakehouse方案分析
Mar 31 Servers
Tomcat项目启动失败的原因和解决办法
Apr 20 Servers
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
Apr 29 Servers
CentOS7环境下MySQL8常用命令小结
Jun 10 Servers
利用Apache Common将java对象池化的问题
Jun 16 Servers
Linux下搭建SFTP服务器的命令详解
Jun 25 Servers
Linux在两个服务器直接传文件的操作方法
Aug 05 Servers
使用 DataAnt 监控 Apache APISIX的原理解析
设置IIS Express并发数
Linux中sftp常用命令整理
Jun 28 #Servers
TaiShan 200服务器安装Ubuntu 18.04的图文教程
Jun 28 #Servers
Linux中各个目录的作用与内容
Windows Server 2008配置防火墙策略详解
nginx之queue的具体使用
You might like
PHP 一个页面执行时间类代码
2010/03/05 PHP
6种php上传图片重命名的方法实例
2013/11/04 PHP
在WordPress的后台中添加顶级菜单和子菜单的函数详解
2016/01/11 PHP
PHP实现无限极分类的两种方式示例【递归和引用方式】
2019/03/25 PHP
js location.replace与location.reload的区别
2010/09/08 Javascript
使用Json比用string返回数据更友好,也更面向对象一些
2011/09/13 Javascript
js图片延迟加载的实现方法及思路
2013/07/22 Javascript
JS基于HTML5的canvas标签实现炫目的色相球动画效果实例
2016/08/24 Javascript
jQuery在ie6下无法设置select选中的解决方法详解
2016/09/20 Javascript
jquery Banner轮播选项卡
2016/12/26 Javascript
jQuery代码实现实时获取时间
2017/01/29 Javascript
浅谈js中的变量名和函数名重名
2017/02/13 Javascript
jQuery插件FusionWidgets实现的AngularGauge图效果示例【附demo源码】
2017/03/23 jQuery
Vue.js上下滚动加载组件的实例代码
2017/07/17 Javascript
深入理解基于vue-cli的vuex配置
2017/07/24 Javascript
利用JQuery操作iframe父页面、子页面的元素和方法汇总
2017/09/10 jQuery
JS分页的实现(同步与异步)
2017/09/16 Javascript
vuex 项目结构目录及一些简单配置介绍
2018/04/08 Javascript
JS实现的base64加密解密操作示例
2018/04/18 Javascript
jQuery操作attr、prop、val()/text()/html()、class属性
2019/05/23 jQuery
解决vue路由name同名,路由重复的问题
2020/08/05 Javascript
Python中给List添加元素的4种方法分享
2014/11/28 Python
基于Django URL传参 FORM表单传数据 get post的用法实例
2018/05/28 Python
Python实现栈和队列的简单操作方法示例
2019/11/29 Python
Python基于Hypothesis测试库生成测试数据
2020/04/29 Python
FOREO斐珞尔官方旗舰店:LUNA露娜洁面仪
2018/03/11 全球购物
美国NBA官方商店:NBA Store
2019/04/12 全球购物
CheapTickets泰国:廉价航班,查看促销价格并预订机票
2019/12/28 全球购物
医院办公室主任职责
2013/12/29 职场文书
物流专业大学生职业生涯规划书范文
2014/01/15 职场文书
自我鉴定 电子商务专业
2014/01/30 职场文书
小学敬老月活动方案
2014/02/11 职场文书
学历公证书范本
2014/04/09 职场文书
初中学生操行评语
2014/12/26 职场文书
单身证明格式样本
2015/06/15 职场文书
大卫科波菲尔读书笔记
2015/06/30 职场文书