Рейтинг:1

Более подробные журналы Nginx

флаг kr

Я использую nginx в своей MacOS для тестирования сторонних аутентификаций, таких как Google и Twitter, на локальном хосте. В результате на моем локальном сайте https://локальный:8000/..., я мог бы заниматься с www.funfun.io для сторонних аутентификаций.

Вот файл конфигурации nginx:

рабочие_процессы 1;

События {
    worker_connections 1024;
}

http {
    включить mime.types;
    default_type application/octet-stream;
    отправить файл включен;
    keepalive_timeout 65;

    log_format my_log '{ "время": "$time_iso8601", '
        '"remote_addr": "$remote_addr", '
        '"статус": "$статус", '
        '"запрос": "$запрос", '
        '"request_method": "$request_method", '
        '"http_referrer": "$http_referer", '
        '"http_x_forwarded_for": "$http_x_forwarded_for", '
        '"хост": "$хост", '
        '"имя_сервера": "имя_сервера$", '
        '"upstream_address": "$upstream_addr", '
        '"upstream_status": "$upstream_status", }';

    access_log /usr/local/var/log/nginx/my_log_access.log my_log;

    веселье вверх по течению {
        сервер 178.62.87.72:443;
    }

    сервер {
        слушать 443 ssl;
        имя_сервера локальный хост;
        ssl_certificate /etc/ssl/localhost/localhost.crt;
        ssl_certificate_key /etc/ssl/localhost/localhost.key;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers включен;
        ssl_session_timeout 1 д;
        ssl_stapling выключен;
        ssl_stapling_verify выключен;
        add_header Strict-Transport-Security max-age=15768000;
        add_header X-Frame-Options "";
        proxy_ssl_name "www.funfun.io";
        proxy_ssl_server_name включено;

        местоположение ~ /socialLoginSuccess {
            переписать ^ '/#/socialLoginSuccess' перенаправить;
        }

        расположение ~ /auth/(.*) {
            proxy_pass https://funfun/10studio/auth/$1?$query_string;
            proxy_set_header Хост localhost;
        }
    }
    включить серверы/*;
}

Вот часть логов:

{ "time": "2021-11-11T01:02:44+01:00", "remote_addr": "127.0.0.1", "status": "204", "request": "ОПЦИИ /10studio/auth/ выход из системы HTTP/1.1", "request_method": "ОПЦИИ", "http_referrer": "https://localhost:8000/", "http_x_forwarded_for": "-", "host": "localhost", "server_name": " localhost", "upstream_address": "178.62.87.72:443", "upstream_status": "204" }
{ "time": "2021-11-11T01:02:44+01:00", "remote_addr": "127.0.0.1", "status": "200", "request": "POST /10studio/auth/ выход из системы HTTP/1.1", "request_method": "POST", "http_referrer": "https://localhost:8000/", "http_x_forwarded_for": "-", "host": "localhost", "server_name": " localhost", "upstream_address": "178.62.87.72:443", "upstream_status": "200" }
{ "time": "2021-11-11T01:02:47+01:00", "remote_addr": "127.0.0.1", "status": "302", "request": "GET /10studio/auth/ google HTTP/1.1", "request_method": "GET", "http_referrer": "https://localhost:8000/", "http_x_forwarded_for": "-", "host": "localhost", "server_name": " localhost", "upstream_address": "178.62.87.72:443", "upstream_status": "302" }
{ "time": "2021-11-11T01:02:50+01:00", "remote_addr": "127.0.0.1", "status": "302", "request": "GET /auth/google/ callback?code=4%2F0AX4XfWihw3erIiZok3Yk8jZ5hjcg4sT35YLuZAp5h3qIDZvC_BuHSlvbRiTSh4Sobo_Wbw&scope=email+profile+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.profile+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+openid&authuser= 0&prompt=consent HTTP/1.1", "request_method": "GET", "http_referrer": "https://accounts.google.com/", "http_x_forwarded_for": "-", "host": "localhost", " server_name": "localhost", "upstream_address": "178.62.87.72:443", "upstream_status": "302" }
{ "time": "2021-11-11T01:02:50+01:00", "remote_addr": "127.0.0.1", "status": "302", "request": "GET /auth/signinSuccess HTTP /1.1", "request_method": "GET", "http_referrer": "https://accounts.google.com/", "http_x_forwarded_for": "-", "host": "localhost", "server_name": " localhost", "upstream_address": "178.62.87.72:443", "upstream_status": "302" }
{ "time": "2021-11-11T01:02:50+01:00", "remote_addr": "127.0.0.1", "status": "302", "request": "GET /socialLoginSuccess HTTP/1.1 ", "request_method": "GET", "http_referrer": "https://accounts.google.com/", "http_x_forwarded_for": "-", "host": "localhost", "server_name": "localhost" , "upstream_address": "-", "upstream_status": "-" }
{ "time": "2021-11-11T01:03:00+01:00", "remote_addr": "127.0.0.1", "status": "200", "request": "GET /10studio/10studio/ auth/tokenTie?t=1636588979945 HTTP/1.1", "request_method": "GET", "http_referrer": "https://localhost:8000/", "http_x_forwarded_for": "-", "host": "localhost" , "server_name": "localhost", "upstream_address": "178.62.87.72:443", "upstream_status": "200" }
{ "time": "2021-11-11T01:03:00+01:00", "remote_addr": "127.0.0.1", "status": "200", "request": "GET /10studio/10studio/ auth/tokenTie?t=1636588979993 HTTP/1.1", "request_method": "GET", "http_referrer": "https://localhost:8000/", "http_x_forwarded_for": "-", "host": "localhost" , "server_name": "localhost", "upstream_address": "178.62.87.72:443", "upstream_status": "200" }

Я понимаю, что для обычных запросов (например, https://локальный:8000/#/дом) без авторизация или же SocialLoginSuccess, журнал не записывается. Кто-нибудь знает, как я могу изменить файл конфигурации nginx, чтобы записывать также их журналы?

Кроме того, что я хотел бы видеть из журналов, так это то, что запрос типа https://localhost/10studio/auth/google действительно передан проксируемому серверу по адресу https://178.62.87.72:443/10studio/auth/.... Но из текущих журналов это не очень очевидно. Кто-нибудь знает, как я могу изменить файл конфигурации nginx, чтобы сделать его более явным?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.