nginx, модифицирующий заголовки URL - PullRequest
0 голосов
/ 06 декабря 2018

Я настроил nginx с именем сервера в качестве t0.t1.t2 и портом как 80, и я делаю передачу прокси-сервера в прокси-сервер squid с ipaddress xxx0 и портом 3128, и когда я подключаюсь к прокси-серверу с именем сервера в качестве t0.t1.t2 ипорт 80. Запрос достигает squid, но он отображает страницу недопустимого URL.

Когда я проверил, я обнаружил, что браузер отправляет правильные заголовки, но nginx изменяет заголовки и отправляет squid.По этой причине squid отображает неверный URL.

Ниже приведена моя конфигурация nginx:

server {
    listen 80;
    server_name t0.t1.t2;

    location / {
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_pass http://app;
            proxy_redirect off;
            proxy_ignore_headers "Cache-Control" "Expires";
    }

}

upstream app {
    server 127.0.0.1:3128;
}

Вот журналы отладки nginx:

2018/12/06 07:10:41 [debug] 4007#4007: accept on 0.0.0.0:80, ready: 1
2018/12/06 07:10:41 [debug] 4007#4007: posix_memalign: 00005613FC643650:512 @16
2018/12/06 07:10:41 [debug] 4007#4007: *1 event timer add: 3: 60000:1544080301995
2018/12/06 07:10:41 [debug] 4007#4007: *1 reusable connection: 1
2018/12/06 07:10:41 [debug] 4007#4007: *1 epoll add event: fd:3 op:1 ev:80002001
2018/12/06 07:10:41 [debug] 4007#4007: accept() not ready (11: Resource temporarily unavailable)
2018/12/06 07:10:41 [debug] 4007#4007: *1 http wait request handler
2018/12/06 07:10:41 [debug] 4007#4007: *1 malloc: 00005613FC675210:1024
2018/12/06 07:10:41 [debug] 4007#4007: *1 recv: fd:3 345 of 1024
2018/12/06 07:10:41 [debug] 4007#4007: *1 reusable connection: 0
2018/12/06 07:10:41 [debug] 4007#4007: *1 posix_memalign: 00005613FC654FA0:4096 @16
2018/12/06 07:10:41 [debug] 4007#4007: *1 http process request line
2018/12/06 07:10:41 [debug] 4007#4007: *1 http request line: "GET / HTTP/1.1"
2018/12/06 07:10:41 [debug] 4007#4007: *1 http uri: "/"
2018/12/06 07:10:41 [debug] 4007#4007: *1 http args: ""
2018/12/06 07:10:41 [debug] 4007#4007: *1 http exten: ""
2018/12/06 07:10:41 [debug] 4007#4007: *1 http process request header line
2018/12/06 07:10:41 [debug] 4007#4007: *1 http header: "User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0"
2018/12/06 07:10:41 [debug] 4007#4007: *1 http header: "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
2018/12/06 07:10:41 [debug] 4007#4007: *1 http header: "Accept-Language: en-US,en;q=0.5"
2018/12/06 07:10:41 [debug] 4007#4007: *1 http header: "Accept-Encoding: gzip, deflate"
2018/12/06 07:10:41 [debug] 4007#4007: *1 http header: "Upgrade-Insecure-Requests: 1"

Как вы можетесм. в http: // uri показывает "/".

Что мне нужно изменить в конфигурации nginx, с помощью которой я могу настроить nginx для прямой передачи заголовков, которые браузер отправляет в squid?

...