Http 404 ошибка для медиа-ссылок на Nginx - PullRequest
0 голосов
/ 24 мая 2018

Мне нужно показать ссылки на мультимедиа (изображения и видео) с внешнего CDN из моего VPS, который имеет веб-сервер nginx.Мой сводный конфиг на nginx.conf:

upstream video_balancer {
        server                  res.cloudinary.com;
        }

server {
        listen                  80; 
        server_name             video.XXXXX.com;  
        return                  301      https://$host$request_uri; 
        }

server {
        listen                  443      ssl; 
        ssl                     on;
        server_name             video.XXXXX.com;
        root                    /var/www/video/html/;
        ssl_ciphers             'EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH';
        ssl_certificate         /etc/nginx/ssl/XXXXX.crt;
        ssl_certificate_key     /etc/nginx/ssl/XXXXX.key;
        ssl_session_cache       shared:SSL:1m;
        ssl_prefer_server_ciphers on;
        ssl_protocols           TLSv1 TLSv1.1 TLSv1.2;
        ssl_verify_client       off;
                                                                                                       
    location / {    
        try_files               $uri $uri/ 404;
        proxy_method            GET;                                                                                                
        proxy_redirect          off;                                                                                                
        proxy_set_header        Host                    $host;                                                                      
        proxy_set_header        X-Real-IP               $remote_addr;                                                               
        proxy_set_header        X-Forwarded-For         $proxy_add_x_forwarded_for;                                                 
        proxy_set_header        X-Forwarded-Proto       $scheme;                                                                    
        proxy_set_header        X-Forwarded-Port        443;                                                                        
        proxy_set_header        X-Forwarded-Ssl         on;                                                                         
        proxy_set_header        X-Forwarded-HTTPS       "on";                                                                       
        proxy_ssl_session_reuse off;                                                                                                
        proxy_http_version      1.1;                                                                                                
        proxy_pass              http://video_balancer$request_uri;                                                           
        }                                                                                                                           
} 

Когда я пробую образец по ссылке ниже, я получил ошибку 404 Не найдено:

https://video.XXXXX.com/mediaclub/video/upload/v1527154870/news.mp4

и связанные журналы доступа:

X.X.X.X - - [24/May/2018:14:53:42 +0430] "GET /mediaclub/video/upload/v1527154870/news.mp4 HTTP/1.1" 404 200 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36" "-"

Как мне решить проблему?

1 Ответ

0 голосов
/ 25 мая 2018

Я решил проблему путем перенаправления, для той же проблемы в будущем:

location ^~ /path/ {
          rewrite ^ http://res.cloudinary.com$request_uri? permanent;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...