如何将某个请求URL重新路由到NodeJS中的不同服务器

时间:2016-11-04 05:06:45

标签: node.js azure

我在这里有一个Angular 2应用程序,肯定是在NodeJS上运行但是接下来,请考虑这个应用程序位于主目录 www.angular2app.com ,我有2个其他子模块

是完全没有角度的

www.angular2app.com/blog > WordPress App 1

www.angular2app.com/events > WordPress App 2

www.angular2app.com/anythingelse > Angular 2

有没有办法在 NodeJS 中正确处理此请求? WordPress 1和WordPress 2是完全不同的网站。这里没有apache或nginx,因为它正在运行 MS Azure

希望一些福音派可以帮助我解决这个问题。

谢谢

1 个答案:

答案 0 :(得分:1)

您可以尝试在IIS配置中使用与Virtual Directory类似的解决方案。请考虑Azure Web Apps中的以下测试结构。

为了简单参考,我的测试项目只包含一个node.js和一个php应用程序。

项目的结构:

wwwroot/
    -nodejs/
        -server.js
        -web.config
    -php/
        -index.php

server.js是一个简单的node.js服务器脚本:

var http = require("http");
var server = http.createServer(function(request, response) {
  response.write("Hello World!");
  response.end();
}); 

server.listen(process.env.PORT ||1337);
console.log("Server is listening");

web.config是starter nodejs应用程序的iisnode配置文件,您可以在https://github.com/projectkudu/kudu/wiki/Using-a-custom-web.config-for-Node-apps找到内容。

index.php脚本包含一个测试句phpinfo()

当您浏览domain/nodejs时,请求将针对node.js应用程序。

当您浏览domain/php时,请求将反对PHP应用程序。

如有任何疑问,请随时告诉我。

相关问题