繁体   English   中英

子目录上的nodejs配置

[英]nodejs config on subdirectory

我有一个子域,并在此目录上发布了server.js 一切正常。 但我想在目录中运行我的server.js (因为我想在子目录中运行我的react.js项目)。 例如:

web.example.com/sr

web是我的子域, sr是我的目录。

但我的路线根本不起作用:

web.example.com/sr/user/1

我收到此错误消息:

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>Error</title>
    </head>
    <body>
        <pre>Cannot POST /sr/user/1</pre>
    </body>
</html>

我应该进行任何更改还是要进行任何配置?

您无法执行部署级配置来将您的react应用程序提供给subdir /sr 每次对your.domain.com/sr/*调用都将在您的服务器中结束,并将/sr/*传递给它(而不是简单地/*

您必须对服务器进行编码才能提供React应用程序。 如果将react应用程序捆绑到index.htmlbundle.js ,则必须编写类似以下内容(如果使用的是express,则可能会这样做):

app.get(/\/sr\/\.js/, (req, res) => res.sendFile(`${__dirname}/bundle.js`));
app.get(/\/sr\/*/, (req, res) => res.sendFile(`${__dirname}/index.html`));

如果您使用的是react-router,则还必须对其进行设置,以考虑URL中的前导/sr

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM