Nginx开发实战三:替换请求资源中的固定数据

文章目录

1.效果预览

页面初始效果

页面替换后效果

说明:页面是内网的一个地址,我们通过nginx可以很便捷的将其改为外网访问,但是在外网访问这个地址后,返回的数据中有的地址是内网的,需要我们将其改为外网地址才行,如果能直接修改文件内容那直接改就行,如果资源是第三方的不方便修改的话,那我们就通过下面的nginx来自动替换。

2.下载Nginx解压并初始化

注意项目中一定要有configure及sbin,如果没有configure从新下载nginx并解压即可,如果初始化完没有sbin目录,那很有可能是当前目录存在了nginx文件夹,sbin只会放到nginx中,所以解压后需要将文件名修改为nginx

3.字符串替换模块安装

复制代码
./configure --with-http_stub_status_module --with-http_sub_module 

安装完成后再重新编译,执行命令 make && make install

编译完成后查看模块是否安装成功命令 nignx -V

如果提示nginx不是命令,需要在/etc/profile文件最下面增加一行

复制代码
export PATH=/usr/local/nginx/sbin:$PATH

注意:usr/local/nginx/sbin 为当前nginx解压后的启动路径

4.修改nginx配置文件并重启

在nginx.conf文件中修改如下

复制代码
 location /wftdt/ {     
            proxy_pass  http://10.88.47.243:8000/;
		    sub_filter 'http://10.88.47.243:8000' 'http://218.59.xx.xx:9080/wftdt';
            sub_filter_types *;
            sub_filter_once off;
			proxy_redirect default;
		    proxy_read_timeout 600s;
		    proxy_set_header X-Real-IP  $remote_addr;
		    proxy_set_header Host $host:$server_port;
		    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		    index index.html index.htm;
        }

替换字符串的三行配置

复制代码
  sub_filter 'http://10.88.47.243:8000' 'http://218.59.xx.xx:9080/wftdt';
  sub_filter_types *;
  sub_filter_once off;

意思是将数据中所有的http://10.88.47.243:8000 路径替换为http://218.59.xx.xx:9080/wftdt,然后我们访问/wftdt 这个路径的时候将其转到http://10.88.47.243:8000这个路径下

相关推荐
我不会起名字32220 小时前
网关超时比服务短:一次 499 的完整归因
网关·nginx·排查·499
味悲1 天前
Nginx笔记
linux·运维·笔记·nginx
John_Hui1 天前
CentOS7安装Nginx
linux·服务器·nginx
时间售卖铺3 天前
Nginx 反向代理
运维·nginx·云原生
life码农3 天前
Nginx location 优先级详解:匹配规则、修饰符与完整代码示例
运维·nginx
爬也要爬着前进3 天前
Prometheus通过Nginx-vts-exporter模块监控nginx服务
运维·nginx·prometheus
溪语流沙3 天前
【Web全栈进阶】Nginx反向代理 + HTTPS:正式上线
前端·vue.js·python·nginx·https·fastapi
无敌糖果3 天前
Nginx 后端error.log疯狂刷盘问题分析
运维·nginx
李纲明4 天前
WordPress 古腾堡点「更新」报「不是有效的 JSON 响应」:我按 REST 接口一路查下来的顺序
运维·nginx·php·wordpress·rest api
你看我名字4 天前
LNMP 生产架构与云运维实践:Nginx、PHP-FPM、MySQL 全链路分析
运维·nginx·架构