将CloudFlare上的URL转发到特定端口

时间:2019-01-09 13:33:00

标签: node.js apache port subdomain cloudflare

我同时拥有apache和nodejs服务器,端口80上的apache和3001上的nodejs

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

https://mywebsite..com:3001/https://api.mywebsite.com/在CloudFlare上

有可能吗?我尝试了页面规则,但没有用。

那我该怎么办?

谢谢

1 个答案:

答案 0 :(得分:1)

执行此操作的最佳方法是将apache配置为将api.mywebsite.com代理到服务器上的端口3001 grep从以下示例 <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