Folosesc nginx în MacOS-ul meu pentru a testa autentificări de la terți, cum ar fi Google și Twitter în localhost. Drept urmare, pe site-ul meu local https://localhost:8000/...
, aș putea să mă angajez www.funfun.io
pentru autentificări de la terți.
Iată fișierul de configurare nginx:
lucrător_procese 1;
evenimente {
conexiuni_muncitor 1024;
}
http {
include mime.tipuri;
aplicație de tip_default/octet-stream;
sendfile activat;
keepalive_timeout 65;
log_format my_log '{ "time": "$time_iso8601", '
'"remote_addr": "$remote_addr", '
'"status": "$status", '
'"request": "$request", '
'"request_method": "$request_method", '
'"http_referrer": "$http_referer", '
'"http_x_forwarded_for": "$http_x_forwarded_for", '
'"gazdă": "$gazdă", '
'"server_name": "$server_name", '
'"upstream_address": "$upstream_addr", '
'"upstream_status": "$upstream_status", }';
access_log /usr/local/var/log/nginx/my_log_access.log my_log;
distracție în amonte {
server 178.62.87.72:443;
}
Server {
asculta 443 ssl;
nume_server gazdă locală;
certificat_ssl /etc/ssl/localhost/localhost.crt;
ssl_certificate_key /etc/ssl/localhost/localhost.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers activat;
ssl_session_timeout 1d;
ssl_capsare off;
ssl_stapling_verify off;
add_header Strict-Transport-Security max-age=15768000;
add_header X-Frame-Options "";
proxy_ssl_name „www.funfun.io”;
proxy_ssl_server_name activat;
locație ~ /socialLoginSuccess {
rescrie redirecționarea ^ „/#/socialLoginSuccess”;
}
locație ~ /auth/(.*) {
proxy_pass https://funfun/10studio/auth/$1?$query_string;
proxy_set_header Gazdă localhost;
}
}
include servere/*;
}
Iată o parte din jurnalele:
{ "time": "2021-11-11T01:02:44+01:00", "remote_addr": "127.0.0.1", "status": "204", "request": "OPTIONS /10studio/auth/ deconectați HTTP/1.1”, „request_method”: „OPȚIUNI”, „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/ deconectați 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%2F%2F0apis.com%2F2F0A%2F%3A%2F%2Fwww.googleapis.com%2F2F0AX4XfWihw3erIiZok3Yk8jZ5hjcg4sT35YLuZAp5h3qIDZvC_BuHSlvbRiTSh4Sobo_Wbw&scope=email+profile+https%3A%2F%2Fwww.googleapis.com/ 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" }
Îmi dau seama că, pentru cereri normale (de ex., https://localhost:8000/#/home
) fără auth
sau socialLoginSuccess
, nu există niciun jurnal înregistrat. Știe cineva cum aș putea modifica fișierul meu de configurare nginx pentru a le înregistra și jurnalele?
În plus, ceea ce aș dori să văd din jurnale este că o solicitare ca https://localhost/10studio/auth/google
este într-adevăr trecut la serverul proxy la https://178.62.87.72:443/10studio/auth/...
. Dar din jurnalele actuale, nu este foarte evident. Știe cineva cum aș putea modifica fișierul meu de configurare nginx pentru a-l face mai explicit?