用nodejs做网站 - 1

502 查看

开头

突然就想做一个网站了。

写一个系列,将一个网站开发、部署、运维等方方面面写一遍。虽然不可能方方面面都做到绝对专业,但对于大多数的人来说还是有借鉴意义的。

这其中涉及到了很多的流行要素,比如vuejs、scss、webpack、前后端分离、CDN、自动化测试、docker、API等,整个过程将会变得非常有趣,我们将会学到很多的东西。其中很多东西此前我并没有尝试过,仅仅是听过。整个过程中,我们会不断的学到东西,对比他们,选择他们和抛弃他们。我们总能发现比以前好的东西。

我将尽量还原出一个真实的场景来将这个过程走一遍,将自己碰到的问题和发生的事尽量的呈现出来。或许我写的更像是一篇篇的日志,而不是一个教程。当你顺着我所说的做了之后,你会发现你已经搭建起了自己的网站。

整个过程中产生的费用,还请自行解决:-)

目标

一个明确的目标往往让我们更加的有干劲,所以让我们来设立一个有建设性的目标,以此来不断的鼓舞我们前进。

最典型的网站莫过于论坛、博客、门户网站、电商网站等。出于学习的目的,我认为我们可以将目标定得高一些。那就论坛吧,看起来他的功能包含了博客和门户网站,而且难度适中。而且你可以轻易的把他改造成其他的东西。

那我们就这样决定了,一个属于自己的论坛,独一无二的论坛。

准备

首先你需要一台mac。相信我,这会让我们节省大量的时间,让我们摆脱很多莫名的问题,使我们有时间去解决真正有价值的问题,而不是为了装个东西而耗费一天的时间,这太不值了。

正式开始

让我们从最简单的事做起,安装MySQL。

嗯,没错,我选了MySQL。虽然我也想试着用mongodb,但他的适用场景似乎并不适合我们,尽管很多人都说mongodb和nodejs是绝配。

不管怎么看,MySQL都是更加成熟的一方,遇到了问题有更多的解决方法,也有更多的运维工具。所以选他也是多从稳定方面考虑。

我参考了以下的文章
http://www.csdn.net/article/2014-03-06/2818652-when-use-mongodb-rather-mysql
https://www.mongodb.com/compare/mongodb-mysql
https://ruby-china.org/topics/15961
http://blog.sina.com.cn/s/blog_966e430001019s8v.html
https://www.mongodb.com/compare/mongodb-mysql
https://www.javacodegeeks.com/2015/07/mysql-vs-mongodb.html
http://db-engines.com/en/system/MongoDB%3BMySQL

安装的方法很简单,打开命令行,运行一下命令。

brew install mysql

等待命令行的进度条读完,我们就能看到如下提示。

==> Downloading https://homebrew.bintray.com/bottles/mysql-5.7.9.el_capitan.bottle.tar.gz
Already downloaded: /Library/Caches/Homebrew/mysql-5.7.9.el_capitan.bottle.tar.gz
==> Pouring mysql-5.7.9.el_capitan.bottle.tar.gz
==> Caveats
A "/etc/my.cnf" from another install may interfere with a Homebrew-built
server starting up correctly.

To connect:
    mysql -uroot

To have launchd start mysql at login:
  ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
Then to load mysql now:
  launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
Or, if you don't want/need launchctl, you can just run:
  mysql.server start

提示我们运行命令来启动MySQL。

mysql.server start

然后看到提示。

Starting MySQL
 SUCCESS!

ok,MySQL正常的运行起来了,现在我们需要去访问里面的内容,因此我们要装一个能访问MySQL的客户端,如sequel Pro。当然,你可以用自己的喜欢的工具,这并没有什么问题。

这是他的下载地址 http://www.sequelpro.com/

下载后安装运行,按照图中的信息填入,就可以连接到本地的MySQL上了,此时MySQL还是空的。

我们先给自己建一个数据库,起名website。

嗯,这样我们就把数据库给建立好了,之后我们会在里面建表和进行其他的操作。

下一篇中我们会用express开始搭建应用服务器。