我正在尝试将NGINX用作HTTPS反向代理,用于不支持SSL的旧网络摄像头。 prblem网络摄像头需要2个端口,一个用于网络访问和另一个是视频输入。我需要包含两个端口才能连接并查看视频流。
但是,PROXY_PASS指令似乎只允许每个LOCATION一个端口。我试图输入两行相同的URL但不同的端口。它不喜欢这样,也不会重启nginx服务。有没有办法实现这个目标?
我有另一个只使用一个端口的网络摄像头,它工作正常。
富
答案 0 :(得分:0)
您可以使用此配置文件
第一个端口的代理传递服务器
server {
listen 80;
server_name localhost;
#ssl configuration begin
ssl on;
ssl_certificate /usr/local/nginx/conf/cert.pem;
ssl_certificate_key /usr/local/nginx/conf/cert.key;
keepalive_timeout 70;
#ssl configuration end
#proxy pass
proxy_pass http://192.168.1.7:70/url$request_uri;//70 is your first port
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Request_Uri_X $request_uri;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
Proxy pass server for your second port
server {
listen 81;
server_name localhost;
#ssl configuration begin
ssl on;
ssl_certificate /usr/local/nginx/conf/cert.pem;
ssl_certificate_key /usr/local/nginx/conf/cert.key;
keepalive_timeout 70;
#ssl configuration end
#proxy pass
proxy_pass http://192.168.1.7:71/url$request_uri;// 71 is your second port
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Request_Uri_X $request_uri;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}