这里写自定义目录标题

  • 应用场景
    • 实施想法
    • hosts说明
    • pc现在fiddler实现对端口的监听
    • 手机设置代理
    • hosts配置映射
    • 访问流程
    • 使用中遇到的问题
    • 特别鸣谢

应用场景

(手机应用域名请求局域网pc本地服务)因使用的dcloud wap2app将m站改为app,wap2app指定后端域名并解析为appid,不能更换请求地址,做分享等功能只能在手机上测试,搭建测试环境复杂,故想将app请求域名代理映射到局域网中的pc端后台服务上,有此想法开始实施。

实施想法

pc端可以使用hosts文件来指定域名映射,手机端不能修改hosts,但我们可以通过设置代理让手机的网络通过pc电脑端访问,此时电脑在配置hosts将app应用请求的服务域名映射到pc电脑服务的IP地址上。

hosts说明

简单明了的说,你请求的域名会先到hosts配置中找是否有匹配的,有直接使用。没有再去dns中查找(如果设置了hosts未生效请清理浏览器dns缓存 和 本机dns缓存 cmd -》 ipconfig /flushdns)

pc现在fiddler实现对端口的监听


此时我们将监听8888端口进行流量转发

手机设置代理


首先要确保手机和电脑在同一个局域网内
代理服务器地址为pc电脑的IP地址 cmd ipconfig查看
代理服务地址此地址就是上一步pc设置的监听端口

hosts配置映射

C:\Windows\System32\drivers\etc下的hosts文件修改添加映射

也可以使用switchhosts来配置,下载switchhosts为开源应用。记得使用管理员权限运行

现在手机可以访问了

访问流程

手机应用发出请求test.com.cn到代理服务器 192.168.46.184:8888端口 代理服务器转发请求test.com.cn 到hosts文件查找test.com.cn对应本机192.168.46.184(没写端口默认80,hosts中不嫩填写端口所以我本地服务起动的80端口)好了就是这么个流程

使用中遇到的问题

1.手机网络关闭代理,打开app正常,第二天打开代理,访问页面因是Vue请求后端无地址无变化,发现是手机app缓存了页面导致请求的还是服务器的地址,卸载app重新安装。
2.前后台跨域问题,因拦截的app请求前端地址域名列入app.com.cn/appweb请求后台地址是192.168.46.184:8080/app不是同一个域名所以会导致跨域,此时我们可以将后台和前台域名配置一样列入前台app.com.cn/appweb后台配置app.com.cn/app
这样就不会跨域了,我们在通过switchhost之前配置的域名转发到本地,再利用nginx路径做代理

          listen 80;server_name app.com.cn ;location /app {//后台服务代理proxy_pass   http://192.168.46.184:8080;//后台服务地址}location /appweb{//页面服务代理proxy_pass   http://192.168.46.184:8081;//前台服务地址}

特别鸣谢

谢谢实现过程中蔡兄的提点,感谢观看。

代理app请求地址访问本机服务(同一局域网的本地起的服务器)方便测试app相关推荐

  1. mac for docker访问宿主机服务

    pod访问mac主机网络 Docker For Mac的Docker Daemon是运行于虚拟机(xhyve)中的, 而不是像Linux上那样作为进程运行于宿主机,因此Docker For Mac没有 ...

  2. 在一台win10系统的电脑里安装虚拟机运行CentOS7并实现nginx反向代理从而用域名访问本机的微服务项目

    在虚拟机里的CentOS7安装配置nginx,之前需要一些依赖库作为编译安装的条件,具体作用和命令详情跳转我之前的博客. 安装并使用VMware-workstation-full-15.5.0安装Ce ...

  3. 花生壳绑定域名和动态ip访问本机服务。

    很多小伙伴和我一样想自己动手做个自己的小网站,网站做好了发现只能用ip:端口访问,且自己的ip地址也是动态分配的,比较麻烦. 申请域名什么的又比较费时,暂时不想花money和time在上面.这时花生壳 ...

  4. Android模拟器访问本机服务IP地址

    10.0.2.2

  5. docker容器内服务访问宿主机服务

    我的个人博客:逐步前行STEP 本文背景: 操作系统:macOs 笔者的docker虚拟机中运行了nginx.node服务用来部署一个前后端分离的网站,但是由于docker内的node服务运行效率极低 ...

  6. 浅析Nginx中各种锁实现丨Nginx中手写一个线程池丨Nginx中反向代理,正向代理,负载均衡,静态web服务丨C++后端开发

    学会nginx中锁的使用,让你对锁豁然开朗 1. 反向代理,正向代理,负载均衡,静态web服务 2. nginx 中 accept 锁实现 自旋锁 信号量 3. nginx 中 线程池 实现以及详解虚 ...

  7. burpsuit--设置代理(抓取APP请求)

    上一章写了如何使用burpsuit抓取web的请求,这章写一下使用burpsuit如何抓取app的请求. 1.设置代理 设置地址为本机电脑的ip,自定义一个端口 2.安卓设置代理(此处使用逍遥模拟器) ...

  8. Jmeter设置代理,抓包之app请求

    步骤: 1. Jmeter选择测试计划,添加线程组,添加http请求,添加监听器-察看结果树 2. 添加http代理服务器,右键添加非测试元件-添加http代理服务器 3. 端口改为8889,目标控制 ...

  9. 如何访问局域网内宿主机上的虚机服务

    问题 最近在验证网关及数据库切换方案,由于测试环境机器都在使用,于是在局域网内的一个windows机器上通过WMware虚拟出服务器来实现的,但是虚拟机上完成网关及数据库的搭建后,发现在局域网内无法访 ...

  10. 使用CRT作为sock5代理,本地浏览器直接访问堡垒机

    使用CRT作为sock5代理,本地浏览器直接访问堡垒机内部链接. 1.首先CRT配置能够访问内网连接,后修改一些属性,如下图 2.配置浏览器(使用谷歌,因为用到插件) 安装插件SwitchyOmega ...

最新文章

  1. 免费教材丨第56期:《深度学习导论及案例分析》、《谷歌黑板报-数学之美》
  2. mysql5.6安装及实现双向备份
  3. 《SolidWorks 2016中文版机械设计从入门到精通》——第1章 认识SolidWorks1.1 SolidWorks概述...
  4. pat1079+1086+1090+1094(树的遍历)感想
  5. java edittext 输入监听_Android应用开发之Android EditText 监听用户输入完成的实例
  6. 微软重组变两大事业部:Windows主管离职
  7. 金蝶凭证序时簿在哪_来了!金蝶日常账务处理大全
  8. ai进入轮廓模式怎么退出_详解AI中扩展、扩展外观、轮廓化描边、创建轮廓
  9. java jbutton 不显示_java – JButton中的图像未显示
  10. python继承和多态_Python 简明教程 --- 21,Python 继承与多态
  11. 天津计算机本科学校有哪些专业吗,天津哪些大学有人工智能专业
  12. flashfxpFTP链接显示PASV、列表错误
  13. 史密斯圆图matlab,用MATLAB程序实现Smith圆图的图解过程
  14. 肖文吉mysql_疯狂软件教育中心肖文吉老师_MYSQL视频教程
  15. android 糖果条纹进度条,小破站别出心裁,咒术回战进度条是高专纽扣,堀与宫村是糖果...
  16. eaxsinbx_高等数学导数与微分练习题
  17. 玩游戏学编程,寓教于乐:12个学习编程的游戏化平台
  18. markdown编辑器——文字颜色、大小、字体、背景色、图片大小与居中对齐的设置方法
  19. HBulider 连接手机,在手机端展示
  20. win10升级补丁_Win 10 暂停更新及回滚方法

热门文章

  1. ABAP:cl_system_uuid=>create_uuid_c32_static( )
  2. 激光雷达数据集的采集与播放(C16/C32 系列多线混合固态激光雷达)
  3. ArcGIS10.4下载及安装
  4. 计算机网络安全(一)
  5. 大白菜U盘启动制作工具怎么用?
  6. java swing图书管理系统 java swing mysql实现的图书管理系统源码(1023)
  7. 第一章ASP程序设计概述
  8. 【Keil5】关于keli5使用ST-link下载的配置方法
  9. java开源代码生成器_人人开源之代码生成器(renren-generator)
  10. 美区苹果id被禁用原因和解除限制方法