特别是,我试图复制firefox的行为,当我设置它为https流量代理时。
在我的测试中,Firefox向代理发送CONNECT请求,而下面的curl命令直接向代理发送GET。
curl --proxy-basic mydomain.com:8001 https://www.google.com
我怎样才能使curl的行为像firefox一样,以测试HTTPS连接的代理?
问题不在User-Agent上,因为我并没有试图欺骗代理,让代理认为我是firefox,只是为了帮助代理像Firefox一样发挥功能。
4条答案
按热度按时间tf7tbtn21#
我已经通过Firebug完成了这个任务。
安装firebug后,请按照以下步骤操作:
1.右键单击Firefox中的网页并选择此选项:
1.选择
Net
选项卡1.刷新页面
1.右键单击要模拟的URL请求
1.选择
copy as cURL
1.要模拟的URL请求现在已在剪贴板中。
7vhp5slm2#
你必须指定一个代理,否则事情将无法正常工作,这样做:
curl -x 127.0.0.1:8888 "httpS://www.example.com/"
-确保您正在尝试通过HTTPS连接,否则将发送简单的get。curl -p -x 127.0.0.1:8888 "http://www.example.com/"
-即使使用普通的HTTP资源也可以工作。很难找到任何已经存在的主题除了这个,所以也许我回答了一个已经回答的问题。
eeq64g8w3#
使用CURLOPT_USERAGENT选项将代理设置为Firefox
例如参考The CURL User Agent
要处理ssl部分,请看这个例子http://curl.haxx.se/libcurl/c/https.html
最好的方法是在真实的中进行捕获,然后使用CURLOPT * 设置相应的头字段
k2arahey4#
十年后,我现在有必要的知识来回答我自己的问题: