[项目实战]Vue小宏商城开发日志 (一)环境配置与搭建

vue

  总觉得呢,一直学习字面上的知识有些枯燥,古人曰:实践是代码知识掌握程度的最好体现。所以,今天开始起我要开始自己学习开发一个电商项目,一来是对知识的实践与巩固,另外,也为面试做一些项目经验储备。废话不多说,开始我们“小宏商城”项目日志的第一篇。


  本项目学习资源来源于慕课网,我只是在我的 Blog 里记录一下我的学习过程,方便复习与总结。

vue-项目环境配置">一、Vue 项目环境配置

1,安装 Node 和 Git

  接下来我们需要先下载NodeGit,很简单,去百度一下NodeGitBash的官网,点击下载安装即可。这里要说明一下哈,我们下载时尽可能地选择稳定的版本而不是最新的版本,因为最新的版本可能出现对项目某些模块不支持的情况,再一个,因为是最新版本,出了问题我们能查询的解决方案也是很少的。

  当然,下载好了别忘了检查一下

2,安装 Vue-cli 脚手架及初始化 Webpack 项目

npm install -g @vue/cli

vue init webpack XXX

  这个地方需要注意,我们在配置的时候尽量不要开启我们的ESLint。开启了之后可能会报一些莫名奇妙的错误,往往是这个ESLint搞得鬼。但是我并不是说他没用哈,这是我们书写代码的格式标杆,当我们逐渐地熟悉了代码操作后,我们再加上就是了。

  大家可以给自己的项目起一个好听的名字,把那个 XXX 替换掉。我的就叫 SweetyMall 啦!

3,下载相关依赖

npm install

  可是呢,我们的package.json文件并不是那么写的那么全面,我们项目中还要用到很多很重要的插件,在这里我就先下载了vue-resourceaxios,以后遇到会及时做出补充

npm install vue-resource --save

npm install axios --save

启动项目

npm run dev

二、数据库相关配置

  按正常的套路应该是先搭起来我们的静态页面,然后再与我们的数据库相连接。但是配置这一块我搞了足足两天,遇到了好多 bug,甚至一度以为服务器让我搞坏掉了,不过好在是顺利运行。为了避免再度踩坑,小宏就先进行对整个配置工作的记录。

  首先说明一下,我选择了是在腾讯云的服务器上进行安装的。当然,大家也可以选择虚拟机,这是没有问题的,步骤差不多都是一样的。

1,FTP 的安装与配置

  FTP 是我们进行本地与服务器文件传输的一个必要手段,是少不了滴

  A,安装 vsftpd

yum -y install vsftpd

  B,进入配置文件,配置参数

vi /etc/vsftpd/vsftpd.conf

//输入vi命令后,要在非中文输入法敲一下i,书写完成后,先按ESC,再输入:wq即可

//下面指令,部分是存在与默认配置中的,我们只需要改一下值即可,如果没有,在文件的末尾加上就好了。

anonymous_enable=NO

chroot_local_user=YES

allow_writeable_chroot=YES

pasv_enable=YES

pasv_min_port=40000

pasv_max_port=40100

  C,开启 ftp 服务

systemctl start vsftpd

//我们可以设置开机自启动,这样就不用我们一直输入start命令了

systemctl enable vsftpd

  另外,对于我们使用的服务器来说,我们要进行一些安全组的添加,点击这里. 查看具体的添加步骤(各个厂商的服务器添加方法大同小异)

  D,添加用户

//用户名

useradd xiaohong

//密码(会让你再输一次,但是默认密码是不显示的)

passwd xiaohong

  E,记得,给自己的项目文件夹添加权限。(切记!)

//我默认把项目放到了/home/www/下,大家如果没有这个目录,可能是没

有下载nginx或者Apache的原因(如果是云服务器的话,这些默认是有的)

chown -R xiaohong:xiaohong /home/www/sweetymall

  F,重启 FTP 服务

  大致就是这样,但还有一个问题。

  正常情况下,我们想在浏览器上访问我们的本地项目,是没什么大问题的。执行npm run dev命令后,我们就能通过访问localhost:8080/来查看我们的项目成品。可是,我们希望在别处也能够访问我们的项目。上传到服务器上不就好了嘛?确实,我们可以把正在开发中的项目或项目成品上传到我们的服务器。但是,当我们对我们的项目进行代码的添加或修改时,仅仅通过shell窗口就很麻烦了。我们希望能像操作本地项目那样操作我们服务器上的项目。那么,FileZilla无疑是不二之选。当然,这种可视化管理工具有很多,我选择了比较常用的。

  输入正确的信息,即可登录。

2,MongoDB 的安装与配置

  OK,工作已经完成了一大半,接下来是我们的第二关

  A,安装 mangoDB

  这里呢,我还是不太推荐大家使用yum等方式从官网上拉包,真的是太。。。。。慢了。推荐大家找找资源,直接下载个 tgz 包。我也会在文章的最后列出我们本文提及到的一些相关下载。我们自己下载时,一定要注意版本问题,一定要对号入座,版本也不要下载太新的,尽量用稳定的版本。

  我们先在服务器/usr/目录下建一个 mongodb 文件夹,下载好了 tgz 包后,用我们的FileZlia,直接把包移动到我们的 mongodb 文件夹里,然后解压:

cd /usr/

//直接在这里授予权限

mkdir -m 777 mongodb

//解压

tar -zxvf mongodb-linux-x86_64-4.0.13.tgz

//我们换个名字

mv mongodb-linux-x86_64-4.0.13 mymongo

  B,环境变量与配置

  先给我们的 mongo 写到环境变量里,要不每次的启动命令很麻烦的。

vim /etc/profile

//在配置文件中添加下面的语句,好像原来也有一个export,写在它上边好啦。哦对了,输入的时候别忘了

//先敲一下i,写完了,别忘了Esc然后:wq

export PATH=/usr/mongodb/mymongo/bin:$PATH

//使我们的修改生效

source /etc/profile

  接下来我们就要整理一下我们的 mymongo 目录,现在里面还什么都没有呢

(1)跳到我们的mymongo文件夹下,新建数据库目录和日志目录

cd /usr/mongodb/mymongo

mkdir db

mkdir log

(2)设置权限

chmod 777 db

chmod 777 log

(3)创建配置文件

touch mongodb.conf

(4)跳到log目录下,新建日志文件

cd log

touch mongodb.log

(5)回到配置文件,写入如下语句

cd ..

vim mongodb.conf

//写入下面的语句

port=27017

dbpath=/usr/mongodb/mymongo/db

logpath=/usr/mongodb/mymongo/log/mongodb.log

logappend=true

fork=true

maxConns=100

#auth=true

noauth=true

journal=true

storageEngine=wiredTiger

bind_ip=0.0.0.0

  C,启动 Mongo

mongod --config /usr/mongodb/mymongo/mongodb.conf --port 27017

  出现类似下面的界面,那么就恭喜你啦。

  D,可视化工具的选择

  OK,为什么要用可视化工具,我们学过 Mysql 都知道,直接用 SQL 命令操作是很麻烦的,我们需要一个管理工具来帮我们简易的实现增删改查的操作。

  官方给我们提供了一个管理化工具--MongoDBCompassCommunity,当然,官网的东西,下载速度可想而知。不过这个还是挺好用的,就是导入数据的时候最好是以导入文件的形式。自己手写好像总是报错。。

  那么好一些的就是 Studio 3T 了,不过这个好像是付费滴,当然,我们也可以做坏事

  注意:当然不可能这么轻松就测试成功的,如果我们使用Studio 3T测试失败时,可以考虑将我们的服务器防火墙关闭就可以了。

  E,给 mongodb 添加权限用户(顺序很重要!!)

  不知道大家有没有注意到,我们在写 mongodb.conf 配置文件的时候,其中有一项noauth=true,这条语句表明只需要输入正确的 ip 就可以连接到我们的数据库,这无疑是很危险的,所以我们往往需要创立一个指定的用户并授予其权限,来进行访问,这样就不用担心任何人都可以访问我们的数据库了。

  首先,在第一次做验证登录的时候,我们在noauth=true的情况下,新建一个admin用户

  使用 mongo 命令,进入我们书写 mongo 语句的状态。

  创建用户

use admin

db.createUser(

{

user: "admin",

pwd: "password",

roles: [ { role: "root", db: "admin" } ]

}

);

exit;

  退出 mongo 服务,修改配置文件,将其改为权限登录

mongod -f /usr/mongodb/mymongo/mongodb.conf --shutdown

  F,以权限的方式进行登录(admin)

mongo -u admin -p password --authenticationDatabase admin

  创建我们项目用的数据库,并为其配备一个 user

use vuemall

db.createUser(

{

user: "xiaohong",

pwd: "xiaohong",

roles: [ { role: "readWrite", db: "vuemall" } ]

}

);

exit;

  以权限的方式再次进行登录

mongod -f /usr/mongodb/mymongo/mongodb.conf --auth

  回到我们的Compass(Studio 3T 也可以)

  进行到这里,基本上是已经成功了。但是我们发现了一个问题:既然 xiaohong 才是我们可视化工具中用到的那个用户,那么多此一举创建 admin 用户干什么呢?原因是因为,当我们直接创建我们的 user 时,虽然db.auth(user,userpwd)会给我们返回 1,但可视化工具那边就是登不上去,甚至报错。对于这个问题,官方文档是这样说的:先创建一个{role: "userAdminAnyDatabase", db:""}的 user,而实际上在开启验证模式的时候第一个需要创建的 user 是拥有 root 角色的 admin,再通过 admin 去创建其他角色的用户。这样的话,之后通过创建的其他 user 再去做 authentication 登录的时候就不会再报一些莫名其妙的错误了。

  OK,大功告成!接下来可以开始我们的项目开发啦!


  本文主要讲述了我们在开发项目之前做的准备工作,包括vue-cli环境搭建,以及ftpMongoDB的安装。整个过程令我非常‘愉悦’。大家也可以把遇到的问题写在评论区,看看是不是我遇到的,我也可以帮忙解决一下

  另外,附上本文提到的软件或包(不然是真的慢。。。)

  • FileZila

    https://pan.baidu.com/s/19JPLeJHipX3eW7PiMg6png 提取码:s3iu

  • mongodb-linux-x86_64-4.0.13.tgz

    https://pan.baidu.com/s/1lm4XlSrQkGqKGBZv4VUvQA 提取码:kel3

  • Studio 3T

    https://pan.baidu.com/s/1WP4snZHK9RpEimqnRwqI7g 提取码:tsnh

  • XShell(免费版) / XFtp(免费版)

    https://www.netsarang.com/zh/free-for-home-school


  那么。下次见!

以上是 [项目实战]Vue小宏商城开发日志 (一)环境配置与搭建 的全部内容, 来源链接: utcz.com/z/379392.html

回到顶部