Apache上的NextJS

pbpqsu0x  于 2023-10-18  发布在  Apache
关注(0)|答案(1)|浏览(98)

在构建我的NextJs应用程序并运行之后,它在apache上使用以下 .htaccess 运行良好。然而,我遇到了动态路由的问题(类似于:posts/[id]),对于这些情况,它返回块错误。

RewriteEngine On

DirectoryIndex disabled

RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^(.*)$ http://127.0.0.1:4001/ [P,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ http://127.0.0.1:4001/$1 [P,L]
fivyi3re

fivyi3re1#

即使你使用mod_rewrite,你仍然应该包含一个ProxyPassReverse指令。
Apache文档:

RewriteCond "%{REQUEST_FILENAME}"       !-f
RewriteCond "%{REQUEST_FILENAME}"       !-d
RewriteRule "^/(.*)" "http://old.example.com/$1" [P]
ProxyPassReverse "/" "http://old.example.com/"

讨论:在每种情况下,我们都添加了一个ProxyPassReverse指令,以确保后端发出的任何重定向都正确地传递给客户端。
尽可能考虑使用ProxyPass或ProxyPassMatch,而不是mod_rewrite。

相关问题