ecs云主机centos开发nodejs微信公众号笔记

1.登录云主机

ssh-keygen -t rsa
ssh-copy-id root@100.001.111.222

ssh 'root@100.001.111.222'

2.安装nginx

yum install nginx

3.开启nginx服务,并检查是否开启成功

service nginx start
service nginx restart

curl -S 'http://127.0.0.1'

4.安装git

yum install curl
yum install curl-devel
yum install zlib-devel
yum install openssl-devel
yum install perl
yum install cpio
yum install expat-devel
yum install gettext-devel
wget http://distfiles.macports.org/git/git-2.1.1.tar.gz
tar xzvf git-latest.tar.gz
cd git-2011-11-30 #你的目录可能不是这个
autoconf
./configure
make
sudo make install
git --version

5.准备并安装nvm,并配置

rm -rf $HOME/.nvm
sed -i '/nvm/d' $HOME/.bashrc
git clone https://github.com/creationix/nvm.git .nvm
git checkout `git describe --abbrev=0 --tags`
echo "export NVM_NODEJS_ORG_MIRROR=http://npm.taobao.org/mirrors/node" >> $HOME/.bashrc
echo ". $HOME/.nvm/nvm.sh" >> $HOME/.bashrc
source $HOME/.bashrc
nvm ls-remote
nvm install v6.2.1

6.安装npm加速

npm install -g node-gyp-install --registry=http://registry.npm.taobao.org
npm set registry http://registry.npm.taobao.org
node-gyp-install

7.安装全局命令工具包

npm install -g pm2 webpack gulp

 

8.安装express-generator,并生成应用

npm install -g express-generator
express jswechat

9.进入目录,安装依赖并启动应用

cd jswechat
npm install
node bin/www

10.nginx反向代理

vim /etc/nginx/nginx.conf
include /etc/nginx/default.d/*.conf;
location ~ ^/wechat/.+ {
        proxy_pass http://127.0.0.1:3000;
}
location ~ ^/api/wechat {
        proxy_pass http://127.0.0.1:3000;
}

service nginx restart

11.修改应用中的路由,即可通过外网访问http://100.001.111.222/wechat/hello

vim routes/index.js
router.get('/wechat/hello', function(req, res, next) {
  res.render('index', { title: 'Hello wechat from Aliyun ECS --> express' });
});

 

12.编写微信公众平台校验接口

    随机生成token字符 https://www.random.org/

var express = require('express');
var router = express.Router();
const crypto = require('crypto');

/* GET home page. */
router.get('/wechat/hello', function(req, res, next) {
  res.render('index', { title: 'Hello wechat from Aliyun ECS --> express' });
});

const token = '5xfoRDWGMggLqH5OmpPu';
router.get('/api/wechat', function(req, res, next){
        const { signature, timestamp, nonce, echostr } = req.query;
        if(!signature || !timestamp || !nonce || !echostr){
                return res.send('invalid request');
        }

        const params = [token, timestamp, nonce];
        params.sort();

        const str = params.join('');
        const hash = crypto.createHash('sha1');
        const sign = hash.update(params.join('')).digest('hex');

        if(signature === sign){
                res.send(echostr);
        }else{
                res.send('invalid sign');
        }

});

module.exports = router;

13.登录微信公众平台,--基本配置--服务器配置--修改配置--填写服务器配置

14.pm2进程管理工具

cd jswechat

pm2 kill
DEBUG=* pm2 start bin/www --watch
pm2 list
pm2 logs

15.登录微信公众平台,--开发者工具--扫码登录--填写接口配置信息--填写js接口安全域名--测试号二维码扫描关注

16.在jswechat下安装express-xml-bodyparser

npm install express-xml-bodyparser -S

17.在app.js中引入express-xml-bodyparser,并设置静态目录

...
var bodyParser = require('body-parser');
var XMLParser = require('express-xml-bodyparser');
...
app.use(cookieParser());
app.use(XMLParser());
app.use('/wechat/static', express.static(path.join(__dirname, 'public')));
...

18.微信接口调试,编写微信自动回复消息接口

19.微信开发者工具介绍

20.微信接口管理:消息接口管理、用户接口管理、菜单接口管理

21.内嵌网页开发(包括jssdk.js)

22.问答系统开发:安装mongodb

    1.服务器根目录

vim /etc/yum.repos.d/mongodb-org-3.4.repo

    2.写入代码

[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

    3.运行安装

sudo yum install -y mongodb-org

    4.启动mongodb

sudo service mongod start

 23.搭建系统脚手架

posted @ 2017-09-05 12:04  sunbey80  阅读(296)  评论(0编辑  收藏  举报