【问题标题】:Windows IIS with Next js App Internal Server Error 500带有 Next js App 内部服务器错误 500 的 Windows IIS
【发布时间】:2021-10-18 09:59:05
【问题描述】:

我正在尝试在带有 Plesk 面板和 Windows IIS 的 VPS Windows 10 上部署我的 Next.js 应用程序。

问题是我从 Plesk 面板创建了域名,它工作正常。我在端口 3000 上有 Next.js 应用程序的 localhost 我正在尝试使用 IIS 重写反向代理连接到 localhost:3000

IIS 重写反向代理:

但它给了我内部服务器错误 500:

我在 React.js 和 Next.js 以及带有 Express 自定义服务器的 Next.js 上尝试了这个。还是一样的错误。

但是当我尝试使用 Vue.js 或 Node.js express 服务器时,它工作得很好。

当我像 domain.com:3000 这样打开端口时,它也适用于 react 和 next。

我能做什么?

【问题讨论】:

  • “我正在尝试使用域连接到 localhost:3000”,“当我打开像这个 domain.com:3000 这样的端口时,它也适用于 react 和 next。”。这些让我很困惑。你想做的是 localhost:3000 代理到域,还是域代理到 localhost:3000?使用反向代理时,是否勾选了在 IIS 上启用代理?

标签: node.js reactjs iis next.js plesk


【解决方案1】:

搜索了一会我发现解决的问题是iis不能使用Url Rewrite代理如果你使用gzip和Next.js提供gzip压缩来压缩渲染的内容和静态文件所以要修复这个错误你需要转gzip 关闭或在 iis 上启用 gzip。

如果你想在下一个 js 上禁用 gzip,请按照这个 https://nextjs.org/docs/api-reference/next.config.js/compression

如果您想使用 gzip,请在 iis 上启用 gzip,这将帮助您使用 gzip

https://techcommunity.microsoft.com/t5/iis-support-blog/iis-acting-as-reverse-proxy-where-the-problems-start/ba-p/846259

在这里我找到了解决方案: https://docs.microsoft.com/en-us/archive/blogs/friis/iis-with-url-rewrite-as-a-reverse-proxy-part-2-dealing-with-500-52-status-codes

【讨论】:

    猜你喜欢
    • 2013-12-26
    • 1970-01-01
    • 2022-01-21
    • 2012-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-28
    • 1970-01-01
    相关资源
    最近更新 更多