CentOS 7.1下Node.js+Nginx+MongoDB的安装与配置
本次实践使用Linux服务器 CentOS / 7.1 x86_64 (64bit)
Node.js 5.8.0
nginx 1.8.1
vsftpd 3.0.2
安装CentOS7桌面
(非必要)
1.输入
yum install net-tools
2.安装desktop
rpm -ivh
http://mirrors.hustunique.com/epel/beta/7/x86_64/epel-release-7-0.2.noarch.rpm
yum groups install “MATE Desktop” yum groups install “X Window System”
systemctl set-default graphical.target
3.安装完成,重启
reboot
安装vsftpds
安装node.js
安装 node.js
1、在根目录下新建一个目录 /down,用来保存下载的文件
mkdir /down
cd /down
2、安装 node.js 相关软件
首先要安装 gcc gcc-g++ openssl-devel
yum install gcc gcc-g++ openssl-devel
yum install -y bzip2*
yum install libtool automake autoconf gcc-c++ openssl-devel
yum install wget
3、下载 Python 2.7
wget http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz
解压安装 tar
zxvf Python-2.7.8.tgz
cd Python-2.7.8
./configure && make && make install
4、下载 node.js 解压 安装
cd /down
wget http://nodejs.org/dist/v0.10.29/node-v0.10.29.tar.gz
./configure && make &&make install
npm install -g node-gyp
这里可能需要几分钟时间
安装配置Nginx
1.安装Nginx
rpm -ivh http://nginx.org/packages/centos/7/x86_64/RPMS/nginx-1.6.0-2.el7.ngx.x86_64.rpm
yum install -y nginx 安装nginx,根据提示,输入Y安装即可成功安装 service nginx start
启动 chkconfig nginx on 设为开机启动
2.配置Nginx
因为我们要为node服务器建立负载均衡,所以我们
cd /etc/nginx/conf.d
vi node.conf
upstream node{
server 127.0.0.1:18080;
server 127.0.0.1:18090;
}
server{
listen:80 default; #我们将localhost:80作为默认监听端口并
server_name:_; #将此服务作为默认服务对所有域名的访问
location / { #进行反向代理。代理的对象是多个服务器。
proxy_pass http://node;
}
}//简单配置,没有添加优化配置规则。
cd ..
nginx -c nginx.conf
nginx -s stop
service nginx start
service nginx status
3.进行测试,并查看看error.log
配置文件nginx.conf里有关于error日志路径的配置。
4.开启与关闭
关闭
nginx -s stop
开启
nginx -c nginx.conf
安装并配置MongoDB
1.获取MongoDB官网源代码
cd /down
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.5.tgz
2.解压
cd /etc
tar -zxvf /down/mongodb-Linux-x86_64-3.2.5.tgz
mv mongodb-linux-x86_64-3.2.5 mongodb
cd mongodb
3.新建一个目录log用来存放日志,新建一个目录db用来存放数据信息。
mkdir -p /cm/log
mkdir -p /cm/db
4.新建一个配置文件并写入配置信息
cd bin
vi mongodb.conf
dbpath = /cm/db #数据文件存放目录
logpath = /cm/log/mongodb.log #日志文件存放目录
port = 27017 #端口
fork = true #以守护程序的方式启用,即在后台运行
nohttpinterface = true
auth=false#设置用户之前,先不要设置认证,否则启动后,设置用户需要各种权限,建议用户角色分配好后再改成ture。重启后这 样就可以正常使用权限
5.开启服务
开启
./mongod –config mongodb.conf
关闭
netstat -nptl
kill -2 (pid)
6.添加用户与用户权限验证
因为权限auth=false设置的是不检查,我们可以直接进入数据库操作
到bin目录下 ./mongo
创建一个管理用户的账户userAdminAnyDatabase
use admin
db.createUser(
{
user: “admin”,
pwd: “admin”,
roles: [ { role: “userAdminAnyDatabase”, db: “admin” } ]
} )
show users或db.system.users.find()查看admin下的账户
查看到已创建的用户后,修改配置文件,将auth=true
重启mongodb
./mongo
use admin
db.auth(“admin”,”admin”)
返回1则表示验证成功
使用admin账户可以对其他db进行权限控制。
use db1
db.createUser(
{
user: “test”,
pwd: “test”,
roles: [
{ role: “readwrite”, db: “db1” } ,
{ role: “read”, db: “db2” }
]
} )
这样就创建了一个test账户,可以读取db2,可以读取并修改db1。
这时候
use admin
db.system.users.find()
可以查看所有用户。
之后所有的数据库操作都必须在use db后,先auth再操作。
下面关于Node.js的内容你可能也喜欢:
Node.js 的详细介绍:请点这里
Node.js 的下载地址:请点这里