注: 以下ant design 都是指ant design for vue
1. ant design 打包后部署到nginx下刷新 会报404
在使用nginx 部署ant design 项目时,可能会出现刷新url显示404的问题,这是由于nginx的配置文件的原因,
1、如果是在根目录则配置如下
server {
listen 80;
root /usr/share/nginx/html;
location / {
try_files $uri $uri/ /index.html;
}
}
2、如果是在特定的目录则配置如下
server {
listen 80;
root /usr/share/nginx/html;
location /xxx/xxx {
try_files $uri $uri/ /xxx/xxx/index.html;
}
}
原文链接:https://blog.csdn.net/a496401006/article/details/95065112
2. nginx跨域配置
vi /usr/local/etc/nginx/nginx.conf
server {
listen 8888;
server_name localhost;
location / {
root ../../; // 文件index.html所在的文件夹(相对路径)
index index.html index.htm;
try_files $uri $uri/ /index.html =404; // 在History模式下必配置的。
}
location /apis/ { // 替代接口的字符串,在项目使用的。
rewrite ^.+apis/?(.*)$ /$1 break;
include uwsgi_params;
proxy_pass http://***.***.***.***:****;// 代理的接口地址
}
}
参考文章:
https://www.jianshu.com/p/4d2c20c257cf
https://segmentfault.com/a/1190000011145364
3.我的ant design项目 nginx相关配置操作
- nginx的安装
brew install nginx
- nginx的启动
/usr/local/Cellar/nginx/1.17.3_1/bin/nginx -c /usr/local/etc/nginx/nginx.conf
// 1.17.3_1 是版本号
- 杀死服务 => 每次重新启动nginx需要把运行的线程杀死
ps -ef|grep nginx
// 杀死除了grep之外的服务,再重启
kill -9 1088
kill -9 1089
- nginx编辑conf文件
vi /usr/local/etc/nginx/nginx.conf
server {
listen 9000;
server_name 127.0.0.1;
charset utf-8;
location / {
root /opt/crcc-front;
index index.html;
}
location /api {
add_header 'Access-Control-Allow-Origin' '*';
proxy_pass http://dev.***.com; //服务器那边已经配置了转向,这边就不用 rewrite "^/api/(.*)$" /$1 break;
}
location /j_spring_security_check {
add_header 'Access-Control-Allow-Origin' '*';
include uwsgi_params; //刷新404问题解决
proxy_pass http://dev.weschoolx.com;
}
}