Creo que sé la razón por la que sucede esto, pero no sé cómo solucionarlo. Tengo un proxy inverso configurado en un servidor y está transmitiendo desde el puerto 443 a mi servidor principal (no en la misma máquina) en el puerto predeterminado de 8065.
Tengo SSL configurado en el proxy con un certificado let's encrypt.
El puerto 8065 está abierto en mi firewall al servidor principal, pero también en esa misma IP pública tengo los puertos 80 y 443 abiertos a un servidor completamente diferente.
Lo que sucede es que cuando presiono la URL de mi servidor principal, el certificado de ese otro servidor se presenta a mi navegador en lugar del que está configurado en el proxy. No tengo idea de por qué sucede esto. Aquí está mi sección de alojamiento virtual:
<IfModule mod_ssl.c> <VirtualHost *:443> DocumentRoot "/var/www/html" ServerName chat.example.com <Directory "/var/www/html"> allow from all Options None Require all granted </Directory> ProxyPreserveHost On RewriteEngine On RewriteCond %{REQUEST_URI} /api/v[0-9]+/(users/)?websocket [NC] RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC] RewriteCond %{HTTP:CONNECTION} \bUpgrade\b [NC] RewriteRule .* ws://xxxx:8065%{REQUEST_URI} [P,QSA,L] ProxyPass / http://xxxx:8065/ timeout=31536000 ProxyPassReverse / http://xxxx:8065/ SSLCertificateFile /etc/letsencrypt/live/chat.example.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/chat.example.com/privkey.pem Include /etc/letsencrypt/options-ssl-apache.conf SSLCertificateChainFile /etc/letsencrypt/live/chat.example.com/chain.pem </VirtualHost> </IfModule>Déjame saber si se requiere más información. Rico
Terminé haciendo esto de una manera diferente, no estoy seguro de por qué no funcionaba. Lo estoy llamando trabajado alrededor.