记录一次项目部署中出现的问题

82 阅读1分钟

先说一下背景,我们线上运行这一个网站,举个例子,域名比如是:www.abc.com

我们又开发了一个项目,部署在这个域名的二级域名下:www.abc.com/newlist

问题一:

一些css,js文件找不到,报了404

解决:

vite.config.ts 文件中

export default defineConfig(({ mode, command }) => {
    const env = loadEnv(mode, process.cwd());
    const { VITE_APP_ASSETS_BASE_URL } = env;
    return {  
            base: VITE_APP_ASSETS_BASE_URL,// VITE_APP_ASSETS_BASE_URL 为 /newList/
    };
});

说明:

部署生产环境和开发环境下的URL。

默认情况下,vite 会假设你的应用是被部署在一个域名的根路径上

例如 www.ruoyi.vip/ 。如果应用被部署在一个子路径上,你就需要用这个选项指定这个子路径。例如,如果你的应用被部署在 www.ruoyi.vip/admin/ ,则设置 baseUrl 为 /admin/。

问题二

直接访问 www.abc.com/newlist 会 404。

解决:

router 中配置一下。

const router = createRouter({
    // import.meta.env.VITE_APP_ASSETS_BASE_URL 也是 /newList/
    history: createWebHistory(import.meta.env.VITE_APP_ASSETS_BASE_URL),
    routes: constantRoutes
});