首页 > 解决方案 > 将 CloudFlare 上的 URL 转发到特定端口

问题描述

我有一个 apache 和 nodejs 服务器,端口 80 上的 apache 和 3001 上的 nodejs

我想为 api 调用创建一个 url,例如:

https://mywebsite..com:3001/到CloudFlare上的https://api.mywebsite.com/

有可能吗?我已经尝试过页面规则,但它没有用。

那么,我该怎么做呢?

谢谢

标签: node.jsapacheportsubdomaincloudflare

解决方案


最好的方法是将 apache 配置为将 api.mywebsite.com 代理到服务器上的端口 3001 grepped 以下示例来自 <VirtualHost *:*> ProxyPreserveHost On ProxyPass "/" "http://localhost:3001/" ProxyPassReverse "/" "http://localhost:3001/" ServerName api.mywebsite.com </VirtualHost> https://httpd.apache.org/docs/2.4/vhosts/examples.html

请确保您也使用正确的 CORS 设置,否则您将无法从您的网站前端请求您的 api

防止这种情况的另一种方法是将位置 /api 代理到您的 api

<Location "/api/"> ProxyPass "http://localhost:3001" SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1 </Location> https://httpd.apache.org/docs/2.4/mod/mod_proxy.html


推荐阅读