【前端】用百度BAE和express部署自己的node后台
转载请注明出处:http://www.cnblogs.com/shamoyuu/p/node_bae.html
百度有一个应用引擎,价格非常便宜,Java的tomcat每天4毛钱,node每天2毛钱,我以前在上面搭建过一个JavaWeb的项目,今天来说说怎么搭建nodejs+express+mysql的后台。
首先打开console.bce.baidu.com,注册登录完成,然后新建一个应用引擎BAE如下图进行设置

目前基础版的BAE只支持node4.4.4,不过应该已经足够了。如果是用koa2的,可以选择专业版,贵得多,但是支持最新的node版本。
svn或者git可以根据自己的需要选择,我下面是以svn为例。
然后就会看到我们新建的项目了

展开“更多操作”,点击“发布设置”,然后打开“自动发布设置”的开关,这个意思是svn提交以后,会自动部署,不然每次都要手动点一下。
复制svn地址,然后在本地检出,账号密码就是你百度的账号密码,可以看到两个个默认的文件package.json和server.js,还有其他的文件不用理会。
package.json就是。。。。package.json
server.js就是express里的www文件和app.js文件的合体
然后我们把这两个文件都删掉
然后我们在这个文件夹上打开cmd,运行express命令(express的安装自己百度),就会生成一个express标准的项目。
我们需要改造两点:
- 需要给bin文件夹的www文件增加一个js的扩展名,改成www.js
- 需要设置package.json文件里start的属性为"node --harmony ./bin/www.js"
之所以要这样改,是因为BAE基础版启动的时候,必须是一个js文件。加--harmony是让BAE支持ES6的语法。
好了,可以提交了,如果不出意外,就可以看到express的初始页面
注意不要提交node_modules文件夹,系统会自动帮你install的

然后我们在express里编写自己的代码,增加mysql,实现增删改查,这一步略了。我们直接来讲BAE里的mysql怎么用
在BAE部署列表页面的左侧,有一排菜单,点击扩展服务

然后点击“添加新服务”,选择mysql,勾选同意,点击立即购买。现在是免费的1G空间。这个数据库只有BAE可以访问,其他环境下无法访问(百度内网也可以)
新建好了我们就可以在扩展服务界面看到我们新建的mysql数据库了,点击数据库的名字(名字是乱码一样的,自动生成的)可以看到数据库所有的信息了

↑↑↑这就是BAE环境下的数据库配置↑↑↑
数据库的账号和密码,分别是你的AK和SK,可以点击问号,然后点击查看来获取到

如果想要根据不同的环境来区分数据库的话,可以修改根目录下app.conf文件,在最后添加下面的代码
environment :
NODE_ENV : "production"
这个文件须严格遵照YAML语法规范(http://yaml.org/),任何不合规范的配置,如使用中文、Tab或不符合缩进规则等,均会导致发布失败
然后可以在代码里直接获取这个变量
process.env.NODE_ENV //production
完结,散花
我的博客在不登录的情况下也可以评论,只需要输入昵称和评论,这一套后台都是在上面搭建的BAE上运行的。
【前端】用百度BAE和express部署自己的node后台的更多相关文章
- 百度BAE JAVA环境项目部署和调试
起初在一个应用挂在虚拟主机上,昨天早上虚拟主机挂了.本来考虑迁移到SAE上的,但之前发现SAE的JVM云豆消耗的太快(PS:我是中级开发者,每月 10000云豆,如果有哪位大神对SAE JAVA云豆能 ...
- 如何使用百度bae部署web项目
百度bae提供了支持各种开发环境的的应用引擎,包括node.js.php.java等,而且还免费提供了一定容量的mysql.mongodb.redis等数据库,所以,可以把它当作一个云服务器来使用.而 ...
- 借用服务器百度BAE
3一.简介 对于普通的开发者,不必要买服务器和买域名,这时要将自己的项目传到服务器上,就用到了百度BAE这样的,可以直接传项目的服务器. 二.申请 登录百度开放平台上 三.登录网址,选择要使用的项目 ...
- 微信公众号开发第二课 百度BAE搭建和数据库使用
上一节主要是一些准备知识,本课还是准备知识,开发微信也可以不使用数据库,但是要想搭建一些查询类应用,就可能使用到数据库操作,所以本节主要涉及到百度BAE上面的数据库表的创建,插入数据,修改数据,删除数 ...
- 百度BAE环境下WordPress安装教程
不了解代码的童鞋慎重使用这种方法哦,安装过程中可能会出现一些简单的错误. 前两天有位网友在QQ上联系我,他告诉我自己在百度BAE上安装WordPress程序总是出错.我让他按照网络上的教程逐步安装,但 ...
- 百度bae定时任务使用方法
最近想做个定时执行某些请求的任务,因为不是java的,不能有常住内存的控制,php不知百度bae云怎么做,找了很久终于被我找到了 https://cloud.baidu.com/doc/BAE/GUI ...
- 在 Azure 中的 Linux VM 上创建 MongoDB、Express、AngularJS 和 Node.js (MEAN) 堆栈
本教程介绍如何在 Azure 中的 Linux VM 上实现 MongoDB.Express.AngularJS 和 Node.js (MEAN) 堆栈. 通过创建的 MEAN 堆栈,可以在数据库中添 ...
- nginx搭建前端项目web服务器以及利用反向代理调试远程后台接口
前端同学用nginx搭建自己的web服务器,后台程序专门部署在一台服务器上(我们之前公司就有三套环境,开发/测试/生产),这样做的好处是 1.前端代码基本都是静态文件,重启一次很快,也就几秒钟时间. ...
- 小白从零开始阿里云部署react项目+node服务接口(二:node服务+web)
我们用极简的方式来创建服务,没有任何附加功能 1 新建一个server文件夹 2 使用npm init 或者yarn init 一路enter 3 yarn add express cors ...
随机推荐
- DNS服务器解析域名的过程
最近在读许令波老师的<深入分析Java Web技术内幕>,算是对DNS服务器域名解析有个大体的理解,以下的内容来自个人对书中内容的整理 1.什么是域名解析? 当我们在浏览器的地址栏输入一个 ...
- 【转载】Linux时间相关结构与函数
1 时间的获取 在程序当中, 我们经常要输出系统当前的时间,比如日志文件中的每一个事件都要记录其产生时间.在 C 语言中获取当前时间的方法有以下几种,它们所获得的时间精度从秒级到纳秒,各有所不同. 表 ...
- 【转】Awk 命令学习总结、AWk命令系列学习(linux shell)
前面的话 学习linux 的同人,都知道linux shell文本处理能力非常强大.有一组强大的文本处理工具:grep,sed,awk . 其中grep 经常用作查找匹配文本.sed用作文本编辑替换. ...
- 【转】linux shell 逻辑运算符、逻辑表达式详解
shell的逻辑运算符 涉及有以下几种类型,因此只要适当选择,可以解决我们很多复杂的判断,达到事半功倍效果. 一.逻辑运算符 逻辑卷标 表示意思 1. 关于档案与目录的侦测逻辑卷标! -f 常用!侦测 ...
- px、pt、em、rem 的区别
px(pixel) 像素,是屏幕上显示数据的最基本的点,表示相对大小(不同分辨率上px显示不同) pt(point) 印刷行业常用的单位(磅),等于1/72英寸,表示绝对长度 em em是相对长度单位 ...
- 客户端putty xshell连接linux中vim不能正常使用小键盘的问题
在putty或xshell上用vi/vim的时候,开NumLock时按小键盘上的数字键并不能输入数字,而是出现一个字母然后换行(实际上是命令模式上对应上下左右的键). 解决方法: putty:选项Te ...
- Linux 下Telnet 服务安装
Linux 下Telnet 服务安装 注:以下所有命令均在root用户下执行. 命令测试在Linxu版本6.x下完成,部分命令不适用Linux 7.0以上 1.简介 默认情况下Linux只安装了Tel ...
- SDOI2017 Round1
SDOI2017 Round1 在回去的车上写的 cnblog的markdown貌似有bug,空行都没有了 Day -several [清明节] 没想到在省选之前还会有一次放假 放假前一天晚上走到校门 ...
- [Lucas定理]【学习笔记】
Lucas定理 [原文]2017-02-14 [update]2017-03-28 Lucas定理 计算组合数取模,适用于n很大p较小的时候,可以将计算简化到小于p $ \binom{n}{m} \m ...
- html中meta标签及用法理解
自己一直想成为高级前端开发工程师,而自学.奈何最近感觉自学收效甚微,一度迷茫. 不破不立,打算改变这样的状态. 春节后上班第一天,今年打算好好实现自己的前端梦想. 重新整理.总结前端技术. 废话,就不 ...