行为+;貂皮疙瘩&x27;无法使用代理(DNS无法解析域名)
我有一个简单的功能,它使用Mink测试webapp,比如说行为+;貂皮疙瘩&x27;无法使用代理(DNS无法解析域名),dns,proxy,bdd,behat,mink,Dns,Proxy,Bdd,Behat,Mink,我有一个简单的功能,它使用Mink测试webapp,比如说http://myapp.localhost(我在我的hosts文件中有一个类似127.0.0.1 myapp.localhost的记录) 问题是,当我运行该功能时,当Mink驱动程序浏览到应用程序中的任何URL时(例如,当我转到“/some/URL”步骤时使用)得到的所有内容都是来自代理服务器的错误页面,表示无法解析域myapp.localhost。代理服务器地址由env设置。变量:导出http\U代理=… 外部网站工作得很好(就像Be
http://myapp.localhost
(我在我的hosts
文件中有一个类似127.0.0.1 myapp.localhost
的记录)
问题是,当我运行该功能时,当Mink驱动程序浏览到应用程序中的任何URL时(例如,当我转到“/some/URL”步骤时使用)得到的所有内容都是来自代理服务器的错误页面,表示无法解析域myapp.localhost
。代理服务器地址由env设置。变量:导出http\U代理=…
外部网站工作得很好(就像Behat文档中的一个链接)
我的浏览器可以访问应用程序,因为有一个设置告诉浏览器在域为*.localhost
时不要使用代理
如何强制水貂忽略代理
今天花了一个小时来解决这个问题。我使用的解决方案不是很优雅,但这是我能想到的最简单的方法。我有一些用Bash编写的构建工具,它有一个调用Behat的函数:
函数运行行为{
本地http\U代理\U备份=$http\U代理
导出http_代理=;
bin/behat$@#将所有参数传递给behat
#如果您使用behat的phar版本,它将类似于'php behat.phar'$@`
导出http\u proxy=$http\u proxy\u备份
}
基本上,我只是临时将http\u proxy
设置为空值,调用behat,然后恢复http\u proxy
初始值
它是从我的脚本中调用的,如下所示:
if[$1==“behat”];然后
运行_behat${*:2};#除第一名外,通过所有参数
fi