
Meine SSL
gesicherte Webanwendung besteht aus einem Apache-Server (PHP) und NodeJS (Socket.io). Um das Problem blockierter Ports in verschiedenen Netzwerken zu lösen, habe ich beschlossen, nginx
die Anfragen an die von mir festgelegten Ports umzuleiten. Aber ich hatte Probleme, alles richtig zu konfigurieren.
Bearbeitet:
Ich möchte nginx verwenden, um alle Anfragen abzuhören port 443
und sie auf meinen PHP/NodeJS-Dienst zu verweisen. Hier ist die Konfiguration für /etc/nginx/sites-available/default
die Datei:
server {
listen 443;
ssl on;
ssl_certificate /var/www/project/mynode/ssl.crt;
ssl_certificate_key /var/www/project/mynode/private.key;
server_name domain.com ;
access_log /var/log/nginx/nginx.vhost.access.log;
error_log /var/log/nginx/nginx.vhost.error.log;
root /var/www/;
location /project/{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https://127.0.0.1:442/project/;
}
location /backend/{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https://127.0.0.1:8080/project/angular/backend/;
}
location /connect/{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass https://127.0.0.1:9000/;
}
}
Und ich versuche, auf folgende Weise eine Verbindung zum Socket herzustellen:
io.connect("https://www.domain.com/connect");
aber der Socket wird nie verbunden. Die Dienste von Apache funktionieren einwandfrei.
Dies ist der Fehler, der bei mir auftritt:
https://www.domain.com/socket.io/?EIO=3&transport=polling&t=1434534878619-0 404 (Not Found)
Wenn ich jedoch den Port erwähne, funktioniert es einwandfrei. Hier ist der funktionierende Code dafür:
io.connect("https://www.domain.com:9000");
Ich habe die ports.conf
und apache2/sites-available/default
Dateien gemäß den Dokumentationen und Anleitungen konfiguriert und alles versucht, was ich interpretieren konnte, aber ich bekomme immer noch keine Verbindung zu meinem Socket hergestellt.