常见命令
nginx #打开 nginx
nginx -t #测试配置文件是否有语法错误\
nginx -s reopen #重启Nginx\
nginx -s reload #重新加载Nginx配置文件,然后以优雅的方式重启Nginx\
nginx -s stop #强制停止Nginx服务\
nginx -s quit #优雅地停止Nginx服务(即处理完所有请求后再停止服务)
复制代码
项目部署
前端项目配置
如果我们的前端项目不是直接放在服务器的根目录
同时还要修改项目的router配置,新建 new Router是修改{mode:'history',base:'/admin/',routes}
这里也与上面都保持一直即可,
项目打包
npm run build
复制代码
默认打包生成的文件为dist
,自己也可以修改vue.config.js outputpath
,将打包生成好的 dist
目录重命名为 admin
Nginx 部署项目
将命名好的 admin 前端项目放到 Nginx 的 html 目录下去
配置修改:
- 修改端口号为 8008
- root目录为 html
- location地址为 /admin
- 处理前端api配置
- 处理前台路由history模式刷新404的问题
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#gzip on;
server {
listen 8008;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
# 配置我们的 admin 的前台服务 比如 localhost:8008/admin/index.html
location ^~ /admin {
# 处理 Vue 单页面应用 路由模式为 history 模式刷新页面 404 的问题
try_files $uri $uri/ /admin/index.html;
}
location ^~ /user {
# 处理 Vue 单页面应用 路由模式为 history 模式刷新页面 404 的问题
try_files $uri $uri/ /user/index.html;
}
# 修改前端路由请求接口转发
location /api {
proxy_pass http://192.168.110.49:9999;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
复制代码
最后 nginx -s reload
重启配置即可
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END