Как удалить номер порта из пользовательского перенаправления промежуточного программного обеспечения 'redirect-https' - PullRequest
0 голосов
/ 01 января 2019

Я использую node.js, express.js, greenlock-express, redirect-https и apache2.

Сервер использует apache2 с двумя vhosts на порте 80.

Vhost1:

<VirtualHost *:80>
  ServerName www.example.com

  ServerAdmin webmaster@localhost
  DocumentRoot /var/www/html

  ProxyRequests Off
  ProxyPreserveHost On
  ProxyVia Full
  <Proxy *>
    Require all granted
  </Proxy>

  ProxyPass / http://www.example.com:3002/
  ProxyPassReverse / http://www.example.com:3002

</VirtualHost>

Vhost2:

<VirtualHost *:80>
  ServerName subdomain.example.com

  ServerAdmin webmaster@localhost
  DocumentRoot /var/www/html

  ProxyRequests Off
  ProxyPreserveHost On
  ProxyVia Full
  <Proxy *>
    Require all granted
  </Proxy>

  ProxyPass / http://subdomain.example.com:3005/
  ProxyPassReverse / http://subdomain.example.com:3005
</VirtualHost>

У меня есть два приложения node.js: № 1, который работает на порту 3002, и № 2, который работает на порту 3005.

У меня есть настройка greenlock-express для каждого приложения узла, и оба используют redirect-https для принудительного перенаправления на пользовательские порты SSL.

Node app #1 использует httpSecureServer: 444

Node app #2 использует httpSecureServer: 445

Перенаправления работают отлично, однако после перенаправления:

Node app #1 URL-адрес остается https://www.example.com:444/login после перенаправления.

Node app #2 URL-адрес остается https://subdomain.example.com:445/login после перенаправления.

Есть ли для меня изящный способ удалитьномер порта из обоих перенаправленных URL, так что

Node App #1 даст https://www.example.com/login

Node App #2 даст https://subdomain.example.com/login

Возможно ли это?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...