nginx反向代理,用于访问需要2个URL端口的后端网络摄像头服务器

时间:2013-06-17 18:22:51

标签: nginx

我正在尝试将NGINX用作HTTPS反向代理,用于不支持SSL的旧网络摄像头。 prblem网络摄像头需要2个端口,一个用于网络访问和另一个是视频输入。我需要包含两个端口才能连接并查看视频流。

但是,PROXY_PASS指令似乎只允许每个LOCATION一个端口。我试图输入两行相同的URL但不同的端口。它不喜欢这样,也不会重启nginx服务。有没有办法实现这个目标?

我有另一个只使用一个端口的网络摄像头,它工作正常。

1 个答案:

答案 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;

}