准备条件
一台服务器
SSL证书,小程序规定必须要https协议
服务器后台
Node.js
express
mongodb
pm2
下面以腾讯云主机(centos)为例
安装Node.js
yum install nodejs
也可以安装nvm,用nvm管理nodejs版本
安装git
yum install git
连接到远程代码库
以github为例:
配置用户信息
git config --global user.name youname git config --global user.email youemail
生成ssh公钥
ssh -keygen -t rsa -C youemail
默认生成目录为 /root/.ssh
在目录中找到id_rsa.pub文件,复制里面的内容,在自己的github上添加ssh
安装mongodb和客户端shell
yum install mongodb-server mongodb -y
创建数据库文件存放目录
mkdir -p /data/mongodb mkdir -p /data/logs/mongodb
启动mongodb数据库服务
mongod --fork --dbpath /data/mongodb --logpath /data/logs/youlog.log
注意:
如果在启动mongodb服务时在命令后面加上 --auth即会开启认证。
建议开启认证,如果不开会很容易被黑。
--port 12345可以改变数据库的端口号,默认是27017。
--fork是以守护进程的方式启动数据库服务。
--dbpath /data/mongodb 指定数据库文件存放的目录。
--logpath /data/logs/youlog.log 指定日志文件目录。
mongodb的配置文件默认在 /etc/mongod.conf
启动客户端shell
mongo //启动mongodb客户端shell 默认连接test数据库
在shell里可以切换数据库连接,和进行相关操作。
在云服务器以守护进程的方式启动一次数据库服务之后,关闭终端,服务也不会被终止。所以下次不用再启动数据库服务,直接连接就可以。
关闭数据库服务
mongod --shutdown (--dbpath /data/mongodb)
如果启动时加了dbpath而且不是默认的/data/db ,则关闭数据库服务时也应加上dbpath。
创建https服务
npm init //项目初始化
安装express
npm install express --save
实现简单的https服务器
const https = require('https'); const fs = require('fs'); const express = require('express'); const app = express(); let key = fs.readFileSync('youssl.key'); let cert = fs.readFileSync('youssl.crt'); let options = { key : key, cert : cert }; const httpsServer = https.createServer(options,app); httpsServer.listen(443, () => { console.log('listening 443 port'); }); app.get('/',(req, res, next) => { console.log('someone request'); });
.key和.cert文件为你的ssl认证文件,以腾讯云主机为例,可以有免费1年的ssl证书。
使用mongoose操作数据库
npm install mongoose --save const mongoose = require('mongoose'); mongoose.connect('mongodb://127.0.0.1/dbname'); //连接数据库 const connection = mongoose.connection; connection.once('open', (err) => { if(err){ console.log('Database connection failure'); }else{ console.log('Database opened'); } }); const Schema = mongoose.Schema; const YourSchema = new Schema({ name : String, age : Number, }); const yourModel = mongoose.model('yourtable', YourSchema); //在数据库中对应的表为yourtables let yourDoc = new yourModel({ name : 'yourname', age : 18, });
注意 如果启动mongodb数据库服务时加上了--auth 则使用mongoose连接数据库时,要加上认证的账户
mongoose.connect('mongodb://youraccount:pwd@127.0.0.1/dbname');
mongodb与关系型数据库的对应关系
Schema相当于表的结构,可以预定义文档的字段类型,不能进行数据库操作。 Modle可以进行一系列数据库操作,相当于表。Model的实例就相当于表的一行。
使用pm2
安装pm2
npm install -g pm2
启动应用
pm2 start app.js
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]