Назад | Перейти на главную страницу

nginx в качестве прокси для прокси-сервера squid

то, что я пытаюсь понять, это возможность создать полностью прозрачную систему для любого клиентского браузера, которая позволяет мне посещать любой целевой URL, используя синтаксис вроде:

то, что я пытаюсь сделать, прекрасно сообщается, но здесь нет решения http://mailman.nginx.org/pipermail/nginx/2008-De December/008987.html

https://example.com/<uri_to_visit>.

система должна работать так, как будто браузер настроен на использование прокси, но я не хочу заставлять пользователей настраивать параметр прокси.

Я подумал использовать nginx для проксирования запросов uri, а затем squid для обработки запроса. nginx и squid находятся на одном сервере, но также могут находиться на разных серверах. Я пытаюсь получить доступ к любому веб-сайту (например) google.com из любого браузера, используя

"https://example.com/service/google.com" 

example.com управляется одним из моих веб-серверов nginx

Следующий https://stackoverflow.com/questions/28331813/reverse-proxy-from-nginx-to-squid

Раздел конфигурации nginx настроен следующим образом:

location ~* ^/service/(.*) {  
                                                                                                     
    proxy_pass http://localhost:3128/$1$is_args$args;                                                                                                                                                                
    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 Request-URI $request_uri;     
    proxy_set_header Host $host;                                                                                
                                                                                                                                   
    proxy_redirect off;                                                                                                            
}      

        

                                                                                                

и squid.conf

http_port 3128 vhost allow-direct

теперь, когда я пытаюсь получить доступ к https://example.com/service/google.com Отчет логов squid.

Я полагаю, это вопрос относительно proxy_pass, но я сделал много попыток и не смог исправить это правильно.

squid.log

TCP_MISS/403 4495 GET http://example.com/google.com - HIER_NONE/- text/html
TCP_MISS/403 4589 GET http://example.com/google.com - ORIGINAL_DST/127.0.0.1 text/html