// лǰļ
cd Program Files\mongodb\bin

// ָݴĿ¼ʼһmongodb 
./mongod.exe --dbpath "d:\program files\MongoDB\data" --storageEngine "mmapv1"

// ¿һcmdڣbinĿ¼
./mongo   ݿ⣨Ĭtestݿ⣩



Detected unclean shutdow n - d:\program files\MongoDB\data\mongod.lock is not empty.

޸
./mongod.exe --repair --dbpath "d:\program files\MongoDB\data" --storageEngine "mmapv1"

ٴ
**ֻҪmongodbݿ⣬Ҫһֱ**


ڿУÿ޸Ĵ뱣ǶҪֶ򣬲ܲ鿴ĶЧʹ supervisor Խ⣬ȫְװ supervisor

npm install -g supervisor
 supervisor --harmony index 

// ECS
39.108.54.110:3999()
172.18.194.96(˽)

adduser:
fayin
lfy12345678


## nginx 

fdisk -l: 鿴̷Ϣ
df -h: 鿴Ӳʹ
ls -a: 鿴ļб

sudo nginx -s reload: confļ

sudo chmod 777 -R fileName : ޸ļȨ
sudo chmod 777 -R fileName : ޸ļȨ

## һSSH¼ ECS 
նˣgit룺
````
> ssh root@39.108.54.110
> ssh -p 3999 fayin@-#39.108.54.110
````
ʵ룬

## vi 
沢˳лӢ뷨1 esc2  : + wq! 3 enter

##  root Ӧ˺Ȩ

### Ա
ȵ¼Զ˷ʹ aauser username һԱøùԱĵ¼
> adduser fayin
> *********

1 ԱȨ
// fayin ӵ sudo 
> gpasswd -a fayin sudo
> sudo visudo

ҵ #User privilege sepcification һУ fayin ALL=(ALL:ALL) ALLȻͬʱ ctrl + xٰshift + y档

2 ¼ӹԱ˺
¿һ git У
> fayin@39.108.54.110
뼴ɳɹ¼

3 ñ SSH ¼
¿նˣgit룺ls -a ǰļ .xxx ļ .ssh ļ

31 ssh 
> eval "$(ssh-agent -s)"
سʾ Agent pid 2664˵˴

л .sshļ
> ssh-add ~/.ssh/id_rsaӵ

32 ڷ ssh
¿һУ¼Ա˺ţ룺
>ssh-keygen -t rsa -b 4096 -C "15196004361@163.com"
> eval "$(ssh-agent -s)"
л.ssh ļ
> ssh-add ~/.ssh/id_rsa

33 ½ authorized_keys ļ
>vi authorized_keys
 shift + : wq!

34 authorized_keys ļиƱص id_rsa.pub 
> vi authorized_keys
 i ճص id_rsa.pub ݣ escwq! 沢˳

Ȩ,
> chmod 600 authorized_keys 
> sudo service ssh restart 

## ޸ķĬϵ¼˿
> sudo vi /etc/ssh/sshd_config

 i ö˿ Prot 39999 
PasswordAuthentication yes 룺
>AllowUsers fayin

 esc ٰ shift + :, wq沢˳

ٴε¼ssh -p 39999 fayin@yourip

رroot ¼
PermitRootLogin no

## ·ϵͳ

> sudo apt-get update

װģ
> sudo apt-get install vim openssl build-essential libssl-dev wget curl git

ͨnvm װ node.js
1װnvmgithub  nvm
>wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash

2װ node.js
¿һgit  
> nvm install v6.9.5

3ƶϵͳĬϰ汾
> nvm use v6.9.5
> nvm alias default v6.9.5

4Աװ npm
> npm --registry=https://registry.npm.taobao.org install npm -g
> echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

5vi app.js
ڷ½app.jsַhttp://39.108.54.110:3380 ͿԷ

const http = require('http')

http.createServer((req, res) => {
        res.writeHead(200, {'Content-Type': 'text/plain'});
        res.end('԰Ʒʺ')

}).listen(3380)

console.log('Server running on http://39.108.54.110:3380')



##  pm2  Node.js פ
> pm2 start app.js
// pm2 ϵķб
> pm2 list
// ĳӦõϢ
> pm2 show app

### pm2 𱾵ݵ

лĿĿ¼ִУ

pm2 deploy ecosystem.json production setup

pm2 deploy ecosystem.json production 

ecosystem.json

````
{
    "apps": [
        {
            "name": "Blogfront",
            "script": "./build/dev-server.js",
            "env": {
                "COMMON_VARIABLE": "true"
            },
            "env_production": {
                "NODE_ENV": "production"
            }
        }
    ],
    "deploy": {
        "production": {
            "user": "fayin",
            "host": ["39.108.54.110"],
            "port": "3999",
            "ref": "origin/master",
            "repo": "https://github.com/CaptainLiao/blogfront.git",
            "path": "/www/blogfront/production",
            "ssh_options": "StrictHostKeyChecking=no",
            "post-deploy": "npm install && pm2 startOrRestart ecosystem.json --env production",
            "env": {
                "NODE_ENV": "production"
            }
        }
    }
}

````


##  Nginx  Nodejs ˿
1ɾƳapache
> update-rc.d -f apache2 remove
> sudo apt-get remove apache2

2apt-get,װ nginx
> sudo apt-get update
> sudo apt-get install nginx

3 nginx 
> cd /etc/nginx
> cd conf.d
> sudo vi fayin-cn-3380.conf.d

upstream fayin {
        server 127.0.0.1:3380;
}

server {
        listen 80;
        server_name 39.108.54.110/;
        location / {
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;
                proxy_set_header Host $http_host;

                proxy_set_header X-Nginx-Proxy true;

                proxy_pass http://fayin;
                proxy_redirect off;
        }
}


// ļǷɹ
> sudo nginx -t 
// nginx
> sudo nginx -s reload

4 server 
> cd ..
> sudo vi nginx.conf
ȥ server_tokens off; ע͡wq! 沢˳
> sudo service nginx reload








































req.query:  url е querystring ?name=hahareq.query ֵΪ {name: 'haha'}
req.params:  url еռλ /:name /hahareq.params ֵΪ {name: 'haha'}
req.body: 壬ʹصģ飬 body-parserΪ {"name": "haha"} req.body Ϊ {name: 'haha'}