我一直在关注如何在 openshif ( http://www.zev23.com/2014/04/openshift-harmony-nodejs.html ) 中启用自定义节点版本的示例,所以当我 ssh 到应用程序时,我可以看到安装了节点版本(0.11.14),但是当我查看日志时它说
app.use(function *(){
...SyntaxError: Unexpected token *
并且我收到 503 错误。
这是我的 server.js 文件:
var koa = require('koa');
var app = module.exports = koa();
app.use(function *(){
this.body = 'Hello World';
});
var ipaddress = process.env.OPENSHIFT_INTERNAL_IP || process.env.OPENSHIFT_NODEJS_IP;
var port = process.env.OPENSHIFT_INTERNAL_PORT || process.env.OPENSHIFT_NODEJS_PORT || 8080;
if (typeof ipaddress === "undefined") {
// Log errors on OpenShift but continue w/ 127.0.0.1 - this
// allows us to run/test the app locally.
console.warn('No OPENSHIFT_NODEJS_IP var, using 127.0.0.1');
ipaddress = "127.0.0.1";
};
if (!module.parent) app.listen(port, ipaddress);
我还在NODEJS_VERSION
里面添加了 0.11.14
__ 更新 __
我已经使用 ssh 检查了服务器,它说节点 0.11.14 但是当我在我的实际 Web 应用程序启动之前添加这些行(见下文)时,它看起来就像它在节点 0.10.25 上运行并且在 .bash_profile 中设置的路径不是路径中使用的那个。
var ipaddress = process.env.OPENSHIFT_NODEJS_IP || "127.0.0.1";
var port = process.env.OPENSHIFT_NODEJS_PORT || 8080;
console.log(ipaddress, port);
console.log(process.versions);
console.log(process.env.PATH);
有没有办法在实际应用程序启动之前配置 PATH 所以它将使用 0.11.14 而不是 0.10.25
提前谢谢各位