vue+express+mongodb部署到腾讯云服务器上

下面介绍如何将基于vue、express、mongodb的项目部署到腾讯云服务器上。

如有错误,欢迎指出。

这里我使用的是webpack构建工具,可以看到我的目录如下

server是我服务端的代码文件,这个文件夹在其他地方也可以,这里为了方遍演示我放到了同一个目录里面,这里先不管他。刚开始是没有dist目录的,dist是打包后生成的目录。

打包之前需要做的事

vue用的是axios请求的数据,所以在开发的时候存在跨域请求,这里需要在项目根目录的config文件夹的index.js中添加这端代码,不懂的可以去百度搜索。

将vue项目里面请求后台数据的接口改为80,因为我这里的前端代码和后台代码都是在同一台服务器上,所以这里的ip地址我用的是 0.0.0.0,然后端口改为80,因为后面需要修改服务的的端口为80。

  dev: {

    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
      '/': {
        target: 'http://0.0.0.0:80/',
        changeOrigin: true,
        pathRewrite: {
            '^/': ''
        }
    }
    },

接下来开始打包工作

1、在项目根目录运行打包命令

npm run build

可以看到主目录下多了一个dist文件夹,这是webpack打包后生成的文件夹,前端代码全部在这里面

2、将打包后的dist目录放到server文件夹中。

server文件夹就是提供数据的后端文件夹

这里我后端是用的express框架搭建的后台接口,我的目录如下:

3、修改server端的入口文件,我这里是index.js,有的朋友可能是server.js,看个人爱好。

app.use('/public',express.static('public'))
//静态文件路径
app.use(express.static(path.join(__dirname,'dist')))
app.listen(80)

注意1:这里的public是静态文件路径,我这里面放的是前端传入的图片文件。同时还添加了静态文件夹dist(就是刚才打包生成的)。这样才能让server端的代码和前端打包的代码连接起来。

注意2:这里要将exprss监听的端口修改为80,我开始在这里用的端口是3000。到了后面服务器部署的时候开端口一直没有打开,花了很多时间,这里一定要注意。

4、测试本地能否正常运行

在server文件夹下运行代码,如果能够正常运行,就说明打包好了,可以继续往下看。

node index.js

可以看到我这边已经正常启动了,并且localhost:80也能正常访问。

项目部署到服务器上

准备工作,我这里的服务器是centos64的。

1、在服务器上安装node.js

参考连接:node官方安装教程

在RHEL,CentOS或Fedora上,对于Node.js v8 LTS

curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -

或者对于Node.js 10:

curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -

然后安装: 

sudo yum -y install nodejs

可选:安装构建工具

要从npm编译和安装本机插件,您可能还需要安装构建工具:

sudo yum install gcc-c++ make
# or: sudo yum groupinstall 'Development Tools'

安装成功后使用 node -v查看版本,并能看到是否安装成功

2、安装mongodb

参考连接:mongodb官方安装教程

新建文件

vim  /etc/yum.repos.d/mongodb-org-4.0.repo

然后将下面这段代码添加到新建的文件中

[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

开始安装

sudo yum install -y mongodb-org

您可以指定任何可用的MongoDB版本。但是yum ,当有更新的版本可用时,请升级软件包。为防止意外升级,请将包装固定。要固定包,请将以下exclude指令添加到您的/etc/yum.conf文件中:

exclude = mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools

启动mongodb

mongo --host 127.0.0.1:27017

更多mongodb的操作请看官方文档,这里不再讲述。

安装好node和mongodb之后就可以将server文件夹导入到腾讯云服务器上了,放到哪个文件夹看个人喜欢。这里建议导入的时候先删除项目中的依赖文件夹node_modules。因为这个文件夹还是比较大的,导入会花大量时间。

如果这里删除了依赖文件夹,导入之后别忘了在服务器的server文件夹中安装依赖,否则程序无法运行.

安装依赖

npm install

然后进入server文件夹启动js文件就行了。

node index.js

希望对您有所帮助,不懂可以找小编讨论,欢迎交流。

猜你喜欢

转载自blog.csdn.net/weixin_38888773/article/details/82016989