我有一个node.js应用程序(仅适用于端口5000上的API)和一个next.js应用程序(适用于端口3000上的用户),我必须在windows服务器上运行它,我尝试了IIS的反向代理,我可以运行它,但会话和cookie有问题,我相信IIS不会将cookie和会话正确传递给用户或服务器,我得到了一个奇怪的UI,如显示登录页面,但也显示 Jmeter 板,或注销,但仍然导航和使用应用程序,我尝试这些应用程序的配置:
API(node.js)web.config
:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="api" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="http://localhost:5000/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
字符串
网站(next.js)web.config
:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="web" stopProcessing="true">
<match url="(.*)" />
<action type="Rewrite" url="http://localhost:3000/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
型
这是IIS站点:
的数据
1条答案
按热度按时间a0zr77ik1#
我相信这个问题与IIS内存兑现持续时间有关,所以我将其从60更改为1,并修复了这个问题,但我仍然相信可以有更好的解决方案,但这就是我现在所做的。
以下是实现此功能的步骤:
1.在IIS中选择服务器(可能以您的计算机/服务器名称命名)。
1.转到
Application Request Routing Cache
页面。1.通过右侧面板转到
Server Proxy Settings
。1.从
Cache Sttings
更改Memory cache duration (seconds)
为1