Linux(Ubuntu)环境下使用Fiddler
自己的开发环境是Ubuntu, 对于很多优秀的软件但是又没有Linux版本这件事,还是有点遗憾的。比如最近遇到一个问题,在分析某个网站的请求路径和cookie时就遇到了问题。本来Chome浏览器自带的开发者工具对我这种后台开发程序来说足够了,但是有个场景问题难住了:当网页有链接打开一个新的页面,而且这个新打开的页面是在另一个标签页中打开,那么原来页面的控制台不能记录这个请求数据。我在google找了半天没找到好的办法,有个不是办法的办法是在chrome地址栏里输入chrome://net-internals/#events
,但是用过就知道太不好用了。一般在这个时候才会想起Windows的好来,起码可以用Fiddler啊。哦,对,好像有个什么东西,不是可以跨平台跑.NET的程序应用吗,那个是谁,哦,是Mono。本篇文章介绍下在Linux环境下如何使用Fiddler。
首先,你要有个Mono环境,在Ubuntu环境下安装很简单,输入:
sudo apt-get install mono-complete
下载一个最新的Fiddler for Mono版本,我写这篇文章时最新版本是这个。下载完成后,解压到你的习惯放置的随便一个目录里。然后cd到目录下,运行:
tony@tony:~/devs/fiddler$ mono Fiddler.exe
然后熟悉的界面就看到了,怎么使用的你应该知道了。
Chrome浏览器不用进行任何设置,所有请求都会通过Fiddler自动代理,原理就是:当Fiddler启动时会执行如下脚本:
gsettings set org.gnome.system.proxy.https port 8888
gsettings set org.gnome.system.proxy.http port 8888
gsettings set org.gnome.system.proxy.http host '127.0.0.1'
gsettings set org.gnome.system.proxy.https host '127.0.0.1'
gsettings set org.gnome.system.proxy mode 'manual'
就是用gsettings
命令修改系统的http和https代理参数值,同时用model 'manual'
打开系统级代理开关。当关闭Fiddler程序时,会把model
参数值恢复为none
,即不开启代理(这里提示有的同学,如果你在命令行里运行mono Fiddler.exe
后,然后直接kill 9掉该进程,或者直接在窗口crtl+D结束,可能使Fiddler不能正常设置model参数,导致浏览器打开什么网页都是无法访问,遇到这个问题你知道怎么办了吧)。而Chrome浏览器默认就是使用系统代理设置,截图为证:
而Firefox浏览器没有默认使用系统代理设置,所以手动设置下就好了:
Click Edit > Preferences > Advanced > Network > Settings and choose "Manual Proxy Configuration", Proxy 127.0.0.1, Port 8888, and tick the "Use this proxy server for all protocols" box.
参考:Fiddler Mono
Linux(Ubuntu)环境下使用Fiddler的更多相关文章
- 1.MySQL的安装(linux Ubuntu环境下)
首先先检验一下系统中是否已经安装有mysql: deamon@deamon-H55M-S2:~$ sudo netstat -tap | grep mysql [sudo] password for ...
- Linux(Ubuntu 16) 下Java开发环境的配置(二)------Tomcat的配置及常见问题
前言 相比于java JDK的配置,Tomcat的配置简单的多,简直就相当于直接运行了,本文以Tomcat8.0为例进行配置 1.Tomcat的下载 地址:https://tomcat.apach ...
- linux ubuntu系统下,adb不是内部命令 (如何才能让adb命令可以使用)
linux ubuntu系统下,adb不是内部命令 原文地址 linux ubuntu系统下,adb不是内部命令 解决方法: 1.sudo gedit ~/.bashrc 2.将下面的两句加到上面打开 ...
- Go学习笔记(一):Ubuntu 环境下Go的安装
本文是根据<Go Web 编程>,逐步学习 Ubuntu 环境下go的安装的笔记. <Go Web 编程>的URL地址如下: https://github.com/astaxi ...
- ubuntu环境下docker安装步骤
本文是根据docker官方文档翻译,原文:https://docs.docker.com/engine/installation/linux/ubuntulinux/ Docker 支持以下 Ubun ...
- Ubuntu环境下配置GCC
Ubuntu网络环境下安装GCC及其头文件步骤: 1.Ubuntu环境下配置GCC 刚装好的GCC什么都不能编译,因为没有一些必须的头文件,所以要安装build-essential,安装了这个包会安装 ...
- 在Ubuntu环境下配置NIMH MEG Core Facility之CTF Tools
在Ubuntu环境下配置NIMH MEG Core Facility之CTF Tools 网站有提示: The install script won't work, but you can copy ...
- [转载]Ubuntu环境下检查CPU 的温度
原文地址:https://www.linuxprobe.com/ubuntu-cpu-temperature.html 我们将使用一个GUI工具Psensor,它允许你在Linux中监控硬件温度.用P ...
- 在 Windows 和 Linux(Gnome) 环境下 从命令界面打开网页的方式
1.在 Windows 中 通过命令 可以打开网页是很简单的: start http://www.baidu.com 或 start iexplorer http://www.baidu.com 第二 ...
随机推荐
- Android_AsyncTask异步任务(一)
AsyncTask,是android提供的轻量级的异步类,可以直接继承AsyncTask,在类中实现异步操作,并提供接口反馈当前异步执行的程度(可以通过接口实现UI进度更新),最后反馈执行的结果给UI ...
- 桶装水 送水 消费充值PDA会员管理系统 介绍
桶装水 送水 消费充值PDA会员管理系统 介绍 主要功能:会员管理临时开卡.新增会员.修改会员.删除会员场馆管理仓管信息管理.租凭信息管理会员卡管理会员卡类型设置.会员发卡.会员信息管理.体验用户发卡 ...
- XAMPP PHPSTORM XDEBUG 配合使用
1.xdebug 配置 安装完xampp 进入 php.ini [XDebug]zend_extension = "C:\xampp\php\ext\php_xdebug.dll" ...
- vs发布的程序不依赖运行时库msvcp100.dll
[摘要:msvcr100.dll:MS Visual C Runtime 100 msvcp100.dll:MS Visual CPp 100 vs建立的工程,运转时库的范例有MD(MDd)战MT ...
- react学习小结(生命周期- 实例化时期 - 存在期- 销毁时期)
react学习小结 本文是我学习react的阶段性小结,如果看官你是react资深玩家,那么还请就此打住移步他处,如果你想给一些建议和指导,那么还请轻拍~ 目前团队内对react的使用非常普遍,之 ...
- compass Sprites 雪碧图 小图片合成[Sass和compass学习笔记]
demo 源码 地址 https://github.com/qqqzhch/webfans 什么是雪碧图? CSS雪碧 即CSS Sprites,也有人叫它CSS精灵,是一种CSS图像合并技术,该方法 ...
- iOS常用技术
1.判断系统 #define UMSYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) ([[[UIDevice currentDevice] systemVersi ...
- sql server存储过程中SELECT 与 SET 对变量赋值的区别
SQL Server 中对已经定义的变量赋值的方式用两种,分别是 SET 和 SELECT. 对于这两种方式的区别,SQL Server 联机丛书中已经有详细的说明,但很多时候我们 并没有注意,其实这 ...
- Lua输入输出库
1.简单模型 )1.io.write函数: 函数模型为io.write(...) )2.io.read函数: io.read(“*all”) 读取当前输入的整个文件 io.read(”*line“) ...
- Android 四大护法之一 Service
1.Service的概念 Service是Android 四大组件之一,是默认没有界面的运行于后台的服务程序.Service的开启方式分为启动式服务(startService)和绑定式服务(bindS ...