我的建站经历。

我建站的原因也很简单,就仅仅想有一个linux服务器玩一玩,但是还没有想到要怎么玩,就先搭建一个web服务吧。因为我工作的时候可能会用到。


我就从头开始讲起走。

先买了个云服务器,选择了debian,因为听说ubuntu都是基于debian,想想应该是很牛逼,所以就选择了它。

安装node

第一天拿到,就想先装个node。

这个装node,如果想要装了又好又快,就在看你能不能看破红尘了。

在网上查找各种资料,有两种办法:

一、通过debian的软件库安装,但是一上来完蛋了,根本不行,想想linux被称为个性化的强的系统,怎么可能这么方便。

二、自己去下node的源码进行解压安装,这一来感觉很有linux的风格,然而不尽其然,也还是不行,我在这个办法上面弄了整整一个下午。

当我在一次不经意间看到nvm的时候,我感觉看到菩萨,不懂nvm的童鞋可以自行检索nvm,马上就懂了。

web服务

先使用express开启web服务,只需要对静态文件做指引服务就可以。

主要是现在还没有想到,我要放什么内容。

然后再使用一个进程管理,查看这个服务的情况。这里我使用的是PM2,这是一个群友推荐的,现在感觉还不错。

最后为了查看日志,需要一个日志服务,一天的日志保存在一个文件中

为了开启gzip,后期还要配置nginx。

域名解析

域名我使用的是花生壳的二级域名。顶域名太麻烦了,听说还要邮寄备案什么的,就想算了,一个二级域名就够了。

这是花生壳linux的安装方法,很给力,一定要按照教程来,不要乱搞。我就是因为没有完全按照教程来,所以搞错了几次。

待续

安装数据库

为了能让我的服务不只是一个文件管理系统,今天为我的服务器安装了一个mysql数据库。

初级数据库肯定首先想到就是mysql了,而且经典,性能也还可以。

我们就来一步步安装我们的mysql服务吧。

我使用命令直接安装,命令如下:

apt-get install mysql-server mysql-client

反正密码什么的一定要记住,还是提醒一下大家。

node如何连接mysql

node连接mysql依赖于npm下的mysql模块,先上代码

var mysql = require('mysql')
conn = mysql.createConnection(config);
conn.connect();
conn.query(sql, function(err, rows, fields) {
if (err) throw err;
log('The result of sql is: ', rows);
});
conn.end();

这就是一此完整sql执行语句。

createConnection方法需要我们传递一些配置参数,如:

config = {
host: 'localhost',// 指向mysql所在的服务器ip
user: 'root',//默认,mysql的账号
password: '123456',//mysql的密码
database: 'nodejs',//需要操作的数据库
port: 3306//默认,mysql开放的端口
}

query这个方法,会执行我们传递给的sql语句。在回调函数中,可以获得查询到的结果。

剩下的就是考验你的sql能力了。

出一个题目:一条sql语句,初始化创建表,表存在的时候不创建(尽可能的简洁),想出来后可以在下方对答案

CREATE TABLE IF NOT EXISTS `user`(
`id` varchar(255) NOT NULL,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

答案在上方。待续2016年3月3日23:59:20

初级node+express建站的更多相关文章

  1. 源码讲解 node+mongodb 建站攻略(一期)第二节

    源码讲解 node+mongodb 建站攻略(一期)第二节 上一节,我们完成了模拟数据,这次我们来玩儿真正的数据库,mongodb. 代码http://www.imlwj.com/download/n ...

  2. [慕课笔记] node+mongodb建站攻略

    如何利用node+mongodb来快速搭建一个电影网站? 一:后端部分 整个网站的后端是由node.js来驱动的,所以在后端需要安装node.js,以及在这个基础之上的框架express,它能够帮助我 ...

  3. Node.js建站笔记-使用react和react-router取代Backbone

    斟酌之后,决定在<嗨猫>项目中引入react,整体项目偏重spa模式,舍弃部分server端的模板渲染,将一部分渲染工作交给前端react实现. react拥有丰富的组件,虽然不如Back ...

  4. Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么(转)

    Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么?修改 建站有很多技术,如 HTML.HTML5.X ...

  5. Nodejs学习笔记(三)——一张图看懂Nodejs建站

    前言:一条线,竖着放,如果做不到精进至深,那就旋转90°,至少也图个幅度宽广. 通俗解释上面的胡言乱语:还没学会爬,就学起走了?! 继上篇<Nodejs学习笔记(二)——Eclipse中运行调试 ...

  6. (转) Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么?

    Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么? 建站有很多技术,如 HTML.HTML5.XHT ...

  7. Node+Express+node-mysql 实战于演习 全套mysql(增删改查)

    最近这段时间研究Node感觉不错,自己做了一个增删改查,虽然有些简陋,但是思想是想通的,其实所有项目都是增删改查,有助于初学者快速掌握Node 首先 本实例展示的是基于Node+Express+nod ...

  8. 使用gulp、yeoman、bower建站

    前端建站工具 标签 : 工具 *** 脚手架:yeoman 用途 快速搭建新项目 为项目增加新部分 创建模块或者包 引导新服务 ... 开始 安装yo和generator npm i -g yo np ...

  9. Portal:十大免费建站程序推荐

    TOP1 独立网店系统 ShopEx,是上海商派网络科技有限公司推出的一个网上商店系列程序.是目前网店软件行业内比较知名的公司.ShopEx旗下的网上商店系统.网上商城系统以及丰富的网商工具,以专业的 ...

随机推荐

  1. Spark Programming--Actions II

    saveAsTextFile saveAsTextFile(path, compressionCodecClass=None) aveAsTextFile用于将RDD以文本文件的格式存储到文件系统中, ...

  2. JSONModel 遇见关键字为id或者description

    像id.description这样的,都是系统自带的,要解析它,得特殊处理一下.我用的是JSONModel { "contentList": [ { "id": ...

  3. 一个短小的JS函数,用来得到仅仅包含不重复元素的数组

    下面函数主要利用了数组的sort方法,之后的逻辑是看最后一个元素是否等于要添加的元素,如果不是就往尾后加. 这个做法的效率等于sort方法的效率,还过得去. 代码: <!DOCTYPE HTML ...

  4. 进度太慢了,扫频仪PCB

    实在是画过最纠结的一块PCB,左边布线很轻松,但是右边32芯片用到FSMC,还有很多个引出的IO口,相互交叉纠结在了一起,有几根线一路打了3,4个过孔,实在是难布. 工程查了下是6月17号画原理图的, ...

  5. java.lang.NoClassDefFoundError: Could not initialize class ......

    在测试数据字典工具类的时候一直报这个错误,找了好久,原来是SpringContextUtils这个类没有放入到容器中. 但是我在SpringContextUtils上面加了注解的,为什么注解没有扫到呢 ...

  6. :first与:first-child的区别

    说的简单,:first表示单个元素,:fisrt-child表示的多个元素(集合). 如果追求深一点的话, 1.$(:first).css()表示全局或局部全局的第一个,也就是表示单个元素 2.$(: ...

  7. python3学习问题汇总

    1.python2脚本转python3报类型错误 TypeError: ‘str’ does not support the buffer interface 原因:Python3x的string类型 ...

  8. sql语句操作集锦

    SQL操作全集 下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT ...

  9. php 读取webservice接口

    开启 extension = php_soap.dll extension = php_curl.dll extension = php_openssl.dll <script src=&quo ...

  10. jQuery框架的简单使用(H5)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...