我正在拼命尝试让 node.js 在 Ubuntu 12.04 LTS 上再次运行。
我在 2-3 周前安装了它,一切都很顺利,在那段时间里我每天都在使用它。
但是今天,突然它就不再起作用了。它的错误方式真的很奇怪:
node -v
工作并返回 v0.8.2- 该
node
命令也有效,我可以访问控制台并执行console.log
- 但是当我将 node 与这样的文件一起使用时
node server.js
,Ubuntu 只是换了一个新行:
kollektiv@kollektiv-PC:~/node-projects$ node server.js
kollektiv@kollektiv-PC:~/node-projects$
今天晚上我已经重新安装了 Ubuntu,但我得到了相同的结果。
我还做了多个apt-get upgrade
,apt-get update
以防某些 node.js 依赖项会过时。
我安装 node.js 的方式是按照本教程编译源代码: --> Compiling Node.js from source on Ubuntu 10.24 - shapeshed
为了确定,我什chmod 777 server.js
至在服务器文件上做了一个,但这也没有改变任何东西。
非常感谢您的帮助!
编辑: server.js 的内容
var net = require('net'),
server = net.createServer();
var crypto = require('crypto'),
shasum = crypto.createHash('sha256');
var alpha = [],
i = 0,
cle = '';
while(i < 256) {
alpha.push(String.fromCharCode(i));
i++;
}
// CRYPTAGE -- START --
function cryptProcess(cle, txt) {
var k = txt.length,
j = k / cle.length,
cledeBase = cle,
txtc = '',
i = 1;
while(i < j) {
cle = cle + cledeBase;
i++;
}
function crypt(cleu, letr) {
//if(alpha.indexOf(letr) == -1) return "§";
var biIndex = alpha.indexOf(letr) + alpha.indexOf(cleu), x;
sumIndex = biIndex - alpha.length;
x = sumIndex >= 0 ? alpha[sumIndex] : alpha[biIndex];
return x;
}
while(k--) {
txtc = crypt(cle[k], txt[k]) + txtc;
}
return txtc;
}
function decryptProcess(cle, txtc) {
var k = txtc.length,
j = k / cle.length,
cledeBase = cle,
txt = '',
i = 1;
while(i < j) {
cle = cle + cledeBase;
i++;
}
txt = '';
function decrypt(cleu, letc) {
//if(alpha.indexOf(letc) == -1) return "§";
var biIndex = letc - alpha.indexOf(cleu), x;
x = biIndex >= 0 ? alpha[biIndex] : alpha[biIndex + alphabet.length];
return x;
}
while(k--) {
txt = decrypt(cle[k], txtc[k]) + txt;
}
return txt;
}
// CRYPTAGE -- END --
server.on('connection', function(client) {
var connecOne = 0;
function talk(data) {
var msg = data.toString('utf8');
var msgEnc = cryptProcess(cle, msg);
client.write(msgEnc);
console.log(msg + '\nsend as\n' + msgEnc);
}
client.once('data', function(data) {
function triHandShake() {
}
});
client.on('data', function(data) {
var msg = data.toString('utf8');
if(connecOne === 0) {
connectionOne(msg);
connecOne++;
}
else if(connecOne === 1) {
// Check for paragraph symbol
//authentification with cookie as cle
}
var msgDec = decryptProcess(cle, msg);
console.log(msgDec + '\nreiceved as\n' + msgDec);
});
client.on('end', function() {
connecOne = 0;
});
});