前提需求
安装npm&node
感谢来自 weixin_33877885的博文
Centos7:安装node和npm & npm配置全局路径
注意:
笔者安装的版本(上篇文章第一步)
https://npm.taobao.org/mirrors/node/v12.22.1/node-v12.22.1-linux-x64.tar.xz
笔者并没有使用软连接(上篇文章的第七步)
安装jdk(1.8版本)
yum install -y java-1.8.0-openjdk-devel.x86_64
java -version(查看版本号验证是否安装成功)
vi /etc/profile(配置环境变量)
----最后三行添加:-----
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.292.b10-1.el7_9.x86_64
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
:wq(保存退出)
source /etc/profile(更新配置)
安装maven
感谢来自 hello_world!的博文
注意:
笔者第五步及之后没有执行
安装nginx(这一步我是用宝塔安装的)
前端部署
将前端项目打包成zip文件
接着上传到服务器你所放的位置
使用unzip解压
(在项目中)使用命令
npm install --unsafe-perm --registry=https://registry.npm.taobao.org
生成dist文件夹(静态资源的路径)
npm run build
后端部署
-
1.确保本地项目可以正常运行
-
2.(项目以文件夹的形式)提交到服务器你所放的位置
-
3.修改yml文件中,数据库,redis,。。。的位置,符合在你服务器的地址
-
4.在项目根目录下使用
mvn package
对项目进行打包
-
5.在target中找打所打包的文件,放到上一级目录
-
6.运行
nohup java-jar jar包的名称.jar &
-
7.可以查看log.out常看日志文件
在nginx中配置
前端项目中文件修改
axios请求设置成api
nginx配置文件中修改
在宝塔中直接修改,保存,重新加载)
user root;
worker_processes auto;
error_log /www/wwwlogs/nginx_error.log crit;
pid /www/server/nginx/logs/nginx.pid;
worker_rlimit_nofile 51200;
events
{
use epoll;
worker_connections 51200;
multi_accept on;
}
http
{
include mime.types;
#include luawaf.conf;
include proxy.conf;
default_type application/octet-stream;
server_names_hash_bucket_size 512;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 50m;
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
fastcgi_intercept_errors on;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.1;
gzip_comp_level 2;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
limit_conn_zone $binary_remote_addr zone=perip:10m;
limit_conn_zone $server_name zone=perserver:10m;
server_tokens off;
access_log off;
server
{
listen 888;
server_name www.bt.cn;
index index.html index.htm index.php;
root /www/server/phpmyadmin;
#error_page 404 /404.html;
include enable-php.conf;
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
location ~ /\.
{
deny all;
}
access_log /www/wwwlogs/access.log;
}
server
{
listen 8080;
server_name 192.168.1.32;
location / {
index index.html index.htm ;
root /root/workspace/vueadmin/dist;
try_files $uri $uri/ /index.html; # 解决页面刷新404问题
}
#error_page 404 /404.html;
location /api/{
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.32:8802/;
}
location /sys/api/{
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.32:8802/;
}
}
include /www/server/panel/vhost/nginx/*.conf;
}
参数说明
server
{
listen 8080;
server_name 192.168.1.32;
监听8080端口,前端部署在192.168.1.32上面
location / {
index index.html index.htm ;
root /root/workspace/vueadmin/dist;
try_files $uri $uri/ /index.html; # 解决页面刷新404问题
}
首页访问
3.转向访问后台地址
location /api/{
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.32:8802/;
}
location /sys/api/{
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://192.168.1.32:8802/;
}
http://192.168.1.32:8802/时笔者springboot启动的端口。
注意:
try_files $uri $uri/ /index.html; # 解决页面刷新404问题
location /sys/api/(不知道为什么会出现这种接口,直接配置一个)