假设发布到网站子路径为 https://t.16win.cn/sport/
配置vue,指定发布路径(设置 publicPath)
sport/vue.config.js
const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
publicPath: '/sport/',
transpileDependencies: true
})
配置nginx
server {
server_name t.16win.cn;
root /www/xxx;
# 主要是下面这里配置 vue 项目位置
location ^~ /sport {
alias /www/xxx/sport/dist;
try_files $uri $uri/ /index.html = 404;
index index.html index.htm;
}
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
listen 443 http2 ssl;
}
最终效果