gzip和webpack压缩

Igo*_*Vuk 5 compression gzip webpack

我不能让gzip工作.我想事先制作gzip文件.我用compression-webpack-plugin做到了.我通常在服务器上使用这些文件.

app.use(Express.static(path.join(__dirname, '../', 'dist')))

app.get('*', (req: Object, res: Object) => {
  res.render('index')
})
Run Code Online (Sandbox Code Playgroud)

我用我的模板来赞美这些文件.

<head>
    <meta charset="UTF-8" />
    <title>Q</title>
      <link rel='stylesheet' type='text/css' href="stylesLocal.29kf81a60pl57850llfi.js.gz">
</head>

  <body>
      <div id="app"><%- app %></div>
      <script src="bundle.2720b1a98103167676ac.js.gz"></script>
      <script src="vendor.57erz1a981hk5786756u.js.gz"></script>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

如果我没有gzip文件但是当我发送.gz文件时,一切都有效.我正在读取我应该设置Content-Encoding:gzipContent-Type,我尝试了但是无论文件内容类型如何我都抱怨它,因为我发送css,js和文本文件.不知道如何使这项工作?

小智 0

根据我收集的信息,您捆绑文件,运行压缩以获得可用的 .gz 版本,并且您的 HTML 应该调用非 gzip 版本。

这是否表明您想要什么?

https://forum-archive.vuejs.org/topic/4059/adding-gzip-to-webpack-using-compression-plugin

编辑

删除.gz

  <script src="bundle.2720b1a98103167676ac.js"></script>
  <script src="vendor.57erz1a981hk5786756u.js"></script>
Run Code Online (Sandbox Code Playgroud)

原因:浏览器告诉服务器它是否支持GZip,如果支持,则发送文件的.gz版本,否则发送文本版本。浏览器对文件进行解码,并将其加载到 html 中。你看到的只是解码后的版本。

如果服务器发送 .gz 版本,但浏览器损坏,则 .gz 文件未正确创建。