节点JS& Apache HTTP

时间:2018-04-18 12:38:51

标签: node.js apache proxy

需要有关在服务器中设置Web应用程序和REST API的帮助/建议。

目前有3个应用程序,如下所示

  1. 用户Web应用程序 - 在node.js上运行 - 端口3389 /通用响应应用程序
  2. 管理员网络应用程序 - 在apache上运行 - 端口8080 / laravel
  3. 用户应用程序的休息Api - 在apache上运行 - 端口8080 / laravel
  4. 目前我们加载的应用程序如下所示

    用户申请: - www.xyz.com:3389 万维网。 xyz .com:3389 / help 万维网。 xyz .com:3389 / landlord-intro

    管理员申请: - www.xyz.com/app/admin

    REST Api路线: - 获取http://xyz/app/country?id=1 获取http://xyz/app/location

    为了加载没有端口号的用户应用程序,我们尝试在apach conf中设置代理传递,如下所示

    ProxyPass http://127.0.0.1:3389/ ProxyPassReverse http://127.0.0.1:3389/

    ProxyPass http://127.0.0.1:8080/app/admin/ ProxyPassReverse http://127.0.0.1:8080/app/admin/

    现在重新启动apache之后,我们可以在不使用端口号但无法访问管理应用程序的情况下访问用户应用程序,而且我们还需要知道如何从客户端代理传递其余API。

1 个答案:

答案 0 :(得分:0)

您可以使用或创建虚拟主机,在Apache HTTPD中基本上就是这样:

<VirtualHost *:80>
ServerName xyz.com
Redirect / https://example.com/
</VirtualHost>

<VirtualHost *:443>
ServerName example.com
SSLEngine on
SSLCertificateFile /path/to/cert.pem
SSLCertificateKeyFile /path/to/key.pem
ErrorLog /path/to/logs/publicaname.example.com-ssl-error.log
CustomLog /path/to/logs/publicaname.example.com-ssl.log combined

ProxyPass /api/input http://127.0.0.1:8080/api/input
ProxyPassReverse /api/input http://127.0.0.1:8080/api/input
</VirtualHost>