install node v7.x
curl --silent --location https://rpm.nodesource.com/setup_7.x | bash -
#设置镜像npm config set registry=http://registry.npm.taobao.org
#安装nodejssudo yum install nodejs
#验证安装情况
node -v npm -v
install node v8.x
curl --silent --location https://rpm.nodesource.com/setup_8.x | bash -
sudo yum install -y nodejs
#验证安装情况
node -v
npm -v
install node v4.x
一.准备工作
1.安装gccyum install make libssl-dev scl-utils g++ gcc gcc-c++ openssl-devel bzip2-devel pkgconfig
2.卸载npm 和 Node.js
npm uninstall npm -g yum remove nodejs npm -y
3.升级python
升级步骤:http://www.jb51.cc/article/p-yhroseos-bqt.html
二、编译安装node.js(推荐第三步跳过编译安装)
wget https://nodejs.org/dist/v4.8.7/node-v4.8.7.tar.gz tar -xzvf node-v4.8.7.tar.gz cd node-v4.8.7/ ./configure make sudo make install
建立软链,否则可能会提示你没有安装nodejs无法安装npm。:
sudo ln -s /usr/local/bin/node /usr/bin/node
安装过程出现如下错误:
ImportError: No module named bz2 make[1]: *** [/data/package/node-v0.10.29/out/Release/obj/gen/libraries.cc] Error 1 make[1]: Leaving directory `/data/package/node-v0.10.29/out' make: *** [node] Error 2
解决方法:
yum install bzip2-devel
然后需要重新编译一下python,之后再import bz2就不会提示错误了。
在 CentOS 6 上编译 node 源代码的时候,有以下报错:
WARNING: C++ compiler too old,need g++ 4.8 or clang++ 3.4 (CXX=g++)
这是由于 CentOS 6 中编译 node4+ 需要高版本号的 C++ 编译器,于是我直接上传编译好的 nodejs 二进制版本。
事实上,我推崇大家直接下载已编译好的 node 版本,可以避开很多坑。
三、跳过编译安装
1.下载node二进制包,解压配置:
wget https://nodejs.org/dist/v4.8.7/node-v4.8.7-linux-x64.tar.gz tar zxvf node-v4.8.7-linux-x64.tar.gz mv node-v4.8.7-linux-x64 /usr/local/node chown -R root:root /usr/local/node/
2.建立软链,否则可能会提示你没有安装nodejs无法安装npm。:
sudo ln -s /usr/local/node/bin/node /usr/bin/node sudo ln -s /usr/local/node/bin/node /usr/local/bin/node sudo ln -s /usr/local/node/bin/npm /usr/bin/npm sudo ln -s /usr/local/node/bin/npm /usr/local/bin/npm
3.配置环境变量
$ vi /etc/profile 增加以下内容: export NODE_HOME=/usr/local/node export PATH=$NODE_HOME/bin:$PATH
如果关闭终端再进去发现 node 环境变量失效,可以在 ~/.bash_profile 增加 export。
$ vi ~/.bash_profile 在结尾添加以下内容: export NODE_HOME=/usr/local/node export PATH=$NODE_HOME/bin:$PATH
使环境变量生效
source /etc/profile
退出系统,再次进入执行 node -v 和 npm -v,出现版本号则说明没有问题。
四.测试node.js
查看 node 版本:
$ node -v v4.8.7
第一个程序少不了hello world了,找一个空闲目录
vi hello_world.js 'use strict'; var http = require('http'); http.createServer(function (req,res) { res.writeHead(200,{'Content-Type': 'text/plain'}); res.end('Hello Node.js\n'); }).listen(8088,"0.0.0.0"); console.log('Server running at http://127.0.0.1:8088/'); 第一行总是写上'use strict';是因为我们总是以严格模式运行JavaScript代码,避免各种潜在陷阱。 然后编译,当前目录下输入: node hello_world.js
输出Server running at ……则代表编译成功了。(若提示commad :node:not found,则是第二部编译没有成功,可以在编译次,留意下是不是有错误,也可能是找不到node命令,配置一个软连接:ln -s /usr/local/bin/node /usr/bin/node )
然后在浏览器输入http://127.0.0.1:8088,则浏览器打印出Hello Node.js
五、其他
npm是什么东东?npm其实是Node.js的包管理工具(package manager)。
为啥我们需要一个包管理工具呢?因为我们在Node.js上开发时,会用到很多别人写的JavaScript代码。如果我们要使用别人写的某个包,每次都根据名称搜索一下官方网站,下载代码,解压,再使用,非常繁琐。于是一个集中管理的工具应运而生:大家都把自己开发的模块打包后放到npm官网上,如果要使用,直接通过npm安装就可以直接用,不用管代码存在哪,应该从哪下载。
更重要的是,如果我们要使用模块A,而模块A又依赖于模块B,模块B又依赖于模块X和模块Y,npm可以根据依赖关系,把所有依赖的包都下载下来并管理起来。否则,靠我们自己手动管理,肯定既麻烦又容易出错。
升级npm到最新版本
npm install -g npm
防止npm被墙,使用淘宝的 npm 镜像替代:
npm install -g cnpm --registry=https://registry.npm.taobao.org
提示……It worked,则npm安装成功!
**
搭建express框架**
安装express:
npm install -g express-generator
在需要放置 node app 的目录下初始化一个 express 项目并安装所需模块:
express -e testapp cd testapp && npm install
在浏览器中输入 公网IP:3000 便能直接看到 express 初始页面:
说明 express 框架搭建成功。接下来就愉快地进行开发吧!
原文链接:https://www.f2er.com/centos/374509.html