当前位置:   article > 正文

阿里云服务器web应用部署初窥(vue+express部署完整流程)_express vue 子目录

express vue 子目录

趁着双十一254.92元搞了三年期的服务器,方便自己部署demo、访问接口,记录下部署具体步骤。

本文介绍了node、redis、nginx、mysql、express、vue项目的安装部署,这些除了node外并无耦合关系,可根据个人需求安装。

1、选择服务所在位置,进入实例重置密码、重启实例。

2、本地cmd 链接服务器

ssh root@"ip地址"

     输入密码

3、安装node及express

  1. yum install -y nodejs
  2. 配置淘宝镜像
  3. npm install -g cnpm --registry=https://registry.npm.taobao.org
  4. 安装express
  5. cnpm install express-generator -g
  6. 安装pm2(可选)
  7. cnpm install pm2 -g
  8. 设置pm2开机自启动
  9. pm2 startup systemd
  10. pm2 save

通过命令行或者winscp等可视化工具,将代码上传到服务器对应目录,依赖包线上cnpm i安装。

开放服务器端口3000,并重启实例(详情可参考本文步骤5

 

node -v检查安装是否成功

当线上项目启动失败时,也许是依赖包的锅,实在不行从线下拷一份……

4、安装nginx

  1. yum install nginx
  2. # 设置开机自启动
  3. sudo systemctl enable nginx
  4. # 启动nginx
  5. sudo systemctl start nginx
  6. # 查看nginx状态
  7. sudo systemctl status nginx

 

nginx常用命令行代码及文件目录

  1. # 启动 nginx
  2. sudo systemctl start nginx
  3. # 关闭 nginx
  4. sudo systemctl stop nginx
  5. # 重启 nginx
  6. sudo systemctl restart nginx
  7. # 修改 nginx 配置后重新加载
  8. sudo systemctl reload nginx
  9. # 设置开机启动 nginx
  10. sudo systemctl enable nginx
  11. # 关闭开机启动 nginx
  12. sudo systemctl disable nginx
  13. # 查看 nginx 状态
  14. sudo systemctl status nginx

5、开放实例8080端口(下文将不再详细描述)

重启实例,通过公网ip访问nginx默认首页

 

ok

6、安装mysql

  1. 下载
  2. wget -i -c https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
  3. 安装
  4. yum -y install mysql80-community-release-el7-3.noarch.rpm
  5. yum module disable mysql
  6. yum -y install mysql-community-server
  7. 启动服务
  8. systemctl start mysqld.service
  9. 开机自启
  10. systemctl enable mysqld.service
  11. 查看MySQL服务:
  12. systemctl status mysqld.service

开启3306端口,并重启实例。

查看初始密码

grep "password" /var/log/mysqld.log

  1. 输入密码
  2. mysql -uroot -p
  3. 修改初始密码
  4. ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密码';
  5. 创建musql用户
  6. CREATE USER 'admin'@'%' IDENTIFIED BY '密码';
  7. 允许远程连接
  8. GRANT ALL ON *.* TO 'admin'@'%';
  9. 顺便修改选mysql和node加密方式不一致的问题(不然会报错:
  10. Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol request
  11. ed by server; consider upgrading MySQL client)
  12. ALTER USER 'admin'@'%' IDENTIFIED WITH mysql_native_password BY 'Gu19950402@';
  13. 立即生效
  14. flush privileges;

7、本地链接服务器mysql(以workbench为例)

随后创建一份测试数据库用作测试

8、安装redis

开通6379端口,并重启服务器

  1. 下载稳定版本 (记录好安装目录,我的是home/soft/redis-5.0.2
  2. wget http://download.redis.io/releases/redis-5.0.7.tar.gz
  3. 安装依赖
  4. yum install -y gcc
  5. 解压
  6. tar -zvxf redis-5.0.7.tar.gz
  7. 移动目录
  8. mv /home/soft/redis-5.0.7 /usr/local/redis
  9. 编译
  10. cd /usr/local/redis
  11. make
  12. make PREFIX=/usr/local/redis install

 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,

在目录/usr/local/redis 输入下面命令启动redis 

./bin/redis-server& ./redis.conf

ok

修改一些重要配置项

  1. 编辑配置文件
  2. vim /usr/local/redis/redis.conf
  3. 更改
  4. daemonize no
  5. daemonize yes
  6. 作用是启用守护进程

9、vue项目打包配置、nginx如何部署多项目

一些重要配置项

nginx配置,替换nginx.conf,替换后重启

nginx.conf文件所在位置

  1. location / {
  2. root /usr/share/nginx/html;
  3. try_files $uri $uri/ /index.html;
  4. }
  5. location /august_wind { //子目录,对应路径展示八月长风产品网站
  6. alias alias /home/front/wechat/august_wind;; //子文件目录
  7. expires 1d;
  8. index index.html;
  9. autoindex on;
  10. }
  11. location ^~ /api/ { //路径映射,不然会报错304
  12. proxy_pass http://"ip地址":3000/;
  13. }
  14. location ^~ /dev-api/ {
  15. proxy_pass http://"ip地址":3000/;
  16. }

多项目时设置子目录同样需要vue路由

路由文件

  1. const router = new VueRouter({
  2. mode: 'history',
  3. base: '/august_wind',
  4. routes
  5. })

vue.config.js文件

  1. 添加公共路径
  2. publicPath: '/august_wind',

打开浏览器,输入网址

ok,大功告成。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/120341
推荐阅读
相关标签
  

闽ICP备14008679号