我要完成的工作:让shadowsocks-node.js在 heroku 上运行。
shadowsocks-nodejs 是一个轻量级的隧道代理,可以帮助你通过防火墙。
我让它在同一台机器上的两个进程本地运行。
我的下一步是将其部署到 heroku 并在那里运行 server.js 并在我的机器上本地运行 local.js。但是,我似乎无法建立连接。
我的问题:服务器进程似乎拒绝了连接。
节点 local.js 输出:
calculating ciphers
server listening at port 1080
server connected
concurrent connections: 1
remote connection refused
server connected
concurrent connections: 1
remote connection refused
server connected
等等...
server.js 输出(通过heroku logs
):
012-10-27T20:39:57+00:00 app[web.1]: server connected
2012-10-27T20:39:57+00:00 app[web.1]: concurrent connections: 1
2012-10-27T20:39:57+00:00 app[web.1]: server disconnected
2012-10-27T20:39:57+00:00 app[web.1]: concurrent connections: 0
2012-10-27T20:42:02+00:00 app[web.1]: server connected
2012-10-27T20:42:02+00:00 app[web.1]: concurrent connections: 1
2012-10-27T20:42:02+00:00 app[web.1]: server disconnected
等等。
Chrome 会返回错误:
Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data.
(说得通)
这是shadowsocks使用的我的config.json:
{
"server":["https://damp-woodland-7539.herokuapp.com"],
"server_port":58954,
"local_port":1080,
"password":"barfoo!",
"timeout":60
}
我编辑 server.js 来阅读(第 31 行):
//PORT = config.server_port;
PORT = process.env.PORT || 5000;
正如对heroku应用程序的建议。
这是我的 package.json 文件:
{
"name": "shadowsocks-nodejs",
"scripts": {
"start": "server.js"
},
"version": "0.0.1",
"engines": {
"node": "0.8.x"
},
"dependencies": {
"fs": "*",
"net": "*"
}
}
这可能只是一个简单的设置问题或一些不正确的地址。如果你们中的某个人可以帮助我,那就太好了。
非常感谢!