umi icon indicating copy to clipboard operation
umi copied to clipboard

微前端子项目独立使用mfsu,基座项目加载子项目mf入口文件404

Open SamWeichangyue opened this issue 2 years ago • 4 comments

Discussed in https://github.com/umijs/umi/discussions/8314

Originally posted by SamWeichangyue June 30, 2022 微前端基座项目部署至公网上例如www.devxxx.com. 本地子项目开启mfsu,wenpack配置publicPath: http://localhost:8080/

基座项目 访问本地开发环境 http://localhost:8080/mf-va_remoteEntry.js mfsu的入口文件会404,类似于issue#7044

version

  • "webpack": "^5.72.1",
  • "webpack-cli": "^4.9.2",
  • "webpack-dev-server": "^4.8.1"
  • "@umijs/mfsu": "4.0.2",

demo: https://github.com/SamWeichangyue/test-mfsu.git

SamWeichangyue avatar Jun 30 '22 03:06 SamWeichangyue

解决了吗

frontend-winter avatar Jul 15 '22 05:07 frontend-winter

直接访问 mfsu entry 是 200 话; 可以对比下请求头看看 是不是命中什么规则 导致 404 了

stormslowly avatar Jul 17 '22 15:07 stormslowly

解决了吗

steven-adon avatar Jul 29 '22 00:07 steven-adon

我遇到了同样的问题,请问有解决方案吗?

Excalibur0w0 avatar Aug 08 '22 11:08 Excalibur0w0

遇到类似问题,请问解决了吗?

flycj avatar Dec 01 '22 12:12 flycj

遇到类似问题,请问解决了吗?

你好 有复现吗? issue 里面的描述的信息太少了

stormslowly avatar Dec 01 '22 15:12 stormslowly

几个月之前我是在webpack 的devServer里这么修改的,仅供参考

setupMiddlewares(middlewares, devServer) {
  middlewares.unshift(
    ...mfsuInstance.getMiddlewares()
  )
  middlewares.push({
    name: 'fixMfsuInMicroFrontend',
    path: '/mf-va_remoteEntry.js',
    middleware: (req, res) => {
      const tmpPath = join(process.cwd(), ".mfsu")
      try {
        const content = readFileSync(
          join(tmpPath, "mf-va_remoteEntry.js"),
        );
        res.send(content);
      }catch (err) {
      }
    },
  });
  return middlewares
}

SamWeichangyue avatar Dec 02 '22 03:12 SamWeichangyue