Next.js Custom Express Server 为 woff 和 woff2 文件提供了错误的内容类型
Next.js with Custom Express Server gives wrong content type for woff and woff2 files
我有一个 Next.js 应用程序,我必须将其迁移到 Digital Ocean 上现在专用的新服务器 cpu,突然我的字体被用作 Content-Type:text/html; charset=utf-8 并且我收到 500 错误。这以前是在另一台服务器上工作的,没有对代码库进行任何更改。我已经尝试了很多东西,但我在这里遇到了困难。
const path = require("path");
const glob = require("glob");
module.exports = {
webpack: (config, { dev }) => {
config.module.rules.push(
{
test: /\.(css|scss)/,
loader: "emit-file-loader",
options: {
name: "dist/[path][name].[ext]",
},
},
{
test: /\.css$/,
use: ["babel-loader", "raw-loader", "postcss-loader"],
},
{
test: /\.s(a|c)ss$/,
use: [
"babel-loader",
"raw-loader",
"postcss-loader",
{
loader: "sass-loader",
options: {
sassOptions: {
includePaths: ["styles", "node_modules"]
.map((d) => path.join(__dirname, d))
.map((g) => glob.sync(g))
.reduce((a, c) => a.concat(c), []),
},
},
},
],
}
);
return config;
},
};
编辑:我添加了 next.config.js 的外观
原来是CORS问题。我必须通过 Express.js 更新我的 CORS 策略以允许远程服务器。这为我解决了问题。
我有一个 Next.js 应用程序,我必须将其迁移到 Digital Ocean 上现在专用的新服务器 cpu,突然我的字体被用作 Content-Type:text/html; charset=utf-8 并且我收到 500 错误。这以前是在另一台服务器上工作的,没有对代码库进行任何更改。我已经尝试了很多东西,但我在这里遇到了困难。
const path = require("path");
const glob = require("glob");
module.exports = {
webpack: (config, { dev }) => {
config.module.rules.push(
{
test: /\.(css|scss)/,
loader: "emit-file-loader",
options: {
name: "dist/[path][name].[ext]",
},
},
{
test: /\.css$/,
use: ["babel-loader", "raw-loader", "postcss-loader"],
},
{
test: /\.s(a|c)ss$/,
use: [
"babel-loader",
"raw-loader",
"postcss-loader",
{
loader: "sass-loader",
options: {
sassOptions: {
includePaths: ["styles", "node_modules"]
.map((d) => path.join(__dirname, d))
.map((g) => glob.sync(g))
.reduce((a, c) => a.concat(c), []),
},
},
},
],
}
);
return config;
},
};
编辑:我添加了 next.config.js 的外观
原来是CORS问题。我必须通过 Express.js 更新我的 CORS 策略以允许远程服务器。这为我解决了问题。