Переадресация URL на CloudFlare на определенный порт - PullRequest
0 голосов
/ 09 января 2019

У меня есть сервер apache & nodejs, apache на порту 80 и nodejs на 3001

Я хочу сделать URL для вызовов API примерно так:

https://mywebsite. .com: 3001 / до https://api.mywebsite.com/ на CloudFlare

Возможно ли это сделать? Я пробовал Правила страницы, но это не сработало.

Итак, как я могу это сделать?

Спасибо

1 Ответ

0 голосов
/ 09 января 2019

Лучший способ сделать это - настроить 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

...