Ahmed Mohamed
Ahmed Mohamed

Reputation: 39

Windows IIS with Next js App Internal Server Error 500

I'm trying to deploy my Next.js app on VPS Windows 10 with Plesk panel and Windows IIS.

The problem is I created domain name from Plesk panel and it works fine. And I have localhost for Next.js app on port 3000 I'm trying to connect to localhost:3000 with the domain using IIS rewrite Reverse Proxy

IIS rewrite Reverse Proxy:

enter image description here

But it gives me internal server error 500:

enter image description here

I tried this on React.js and Next.js, and Next.js with Express custom server. Still the same error.

But when I try with Vue.js or Node.js express server, it works just fine.

And when I open port like this domain.com:3000 it also works with react and next.

What can I do?

Upvotes: 2

Views: 2676

Answers (1)

Ahmed Mohamed
Ahmed Mohamed

Reputation: 39

After searching for a while I found the solution problem is the iis can't use Url Rewrite proxy if you using gzip and Next.js provides gzip compression to compress rendered content and static files so to fix this error you need to turn gzip off or enable gzip on iis.

If you want to disable the gzip on next js follow this https://nextjs.org/docs/api-reference/next.config.js/compression

If you want to using gzip enable gzip on iis this wll help you to using gzip

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

Here I found the solution: https://learn.microsoft.com/en-us/archive/blogs/friis/iis-with-url-rewrite-as-a-reverse-proxy-part-2-dealing-with-500-52-status-codes

Upvotes: 2

Related Questions