goagent的大名听说很久,可是一直没能整成功,主要是没这个需求。最近发现耐心下来,很多英文资料都能看懂,但可惜被墙了,而且有些网站经常访问不稳定,所以又继续折腾goagent。
我使用的是Debian 7 amd64版本,如果是在其他平台安装goagent,那可能没有遇到这么多问题,例如我在ubuntu 13.04 amd64下面安装就没有出现任何报错。
goagent安装主要还是要参考图文教程 。
goagent解压后有2个目录,local主要是配置帐号、连接gae的脚本文件;而server则是gae运行的景象文件。
上传好server文件后,我们就可以使用local里面的脚本文件来使用代理服务了。
在local/proxy.ini文件里面填上你的GAE帐号,下面我们使用交互模式来摸索goagent的安装过程。
1. 总是使用goagent的最新版本。
现在goagent的版本是3.1.6, 但我在安装的时候使用的是3.1.5,就出现在公司可以使用,在自己租房这里不能使用的问题。
在local目录下面,主要使用下面命令来进行交互安装:
python proxy.py
下面总结一些出错的现象:
2.缺少python-openssl,libnss3-tools
出错截图:
解决方法:
apt-get install python-openssl libnss3-tools
3. certutil: function failed: security library: bad database.
这里参考了Linux运行goAgent提示:certutil: function failed: security library: bad database.
mv ~/.pki/nssdb ~/.pki/nssdb.corrupted #没有目录,可以跳过。 mkdir -p ~/.pki/nssdb certutil -d sql:$HOME/.pki/nssdb -N #不要设置密码,两次回车就可以了。
4. 在我机器上,对gevent和dnslib会有要求,这里使用pip安装最新版的gevent和dnslib
apt-get install python-pip pip install gevent dnslib
5. 添加goagent自动启动
在/etc/rc.local文件里面,在exit 0行前面添加下面代码,goagent就可以随系统启动了。
/usr/local/goagent-goagent-b5e29a2/local/proxy.sh start
注意,这里要替换你的goagent目录位置。
然后就可以使用goagent代理上网了。
2014-03-25 补
6.使用goagent作为局域网代理
修改proxy.ini文件里面的listen字段:
[listen] ip = port = 8087 visible = 1 debuginfo = 0
然后,linux下设置http_proxy环境变量,win下在IE浏览器设置代理即可。
今天使用erlang开发的使用注意到了一个小问题,就随今天的博客写在这里了。
使用erl -sname name开发,这里的name不能带句号.。
下面是对比图:
大家可以RabbitMQ使用IP地址配置集群模式看一下原因,下面节选。
-name和-sname是Erlang节点的启动参数,表示以分布式模式启动Erlang节点,两者的区别是: -name表示long name,需要跟上可通过DNS解析的节点的完整域名(FQDN)或者IP,-sname表示short name,通常跟上主机名,并且主机名称中不能有点号.。