Folosind FastCGI modul mi-a permis să transmit variabilele serverului direct în aplicația mea PHP prin utilizarea lui param. Ceea ce sper să fac în continuare este să înregistrez unul dintre acești parametri în jurnalele mele de acces NGINX.
Am încercat să-l atribui direct formatului de jurnal după numele parametrului, dar pare să rezulte o valoare goală. Mai târziu am încercat să trec acest parametru într-o variabilă NGINX, dar nici acolo nu am avut succes.
În următoarea configurație, am definit propria mea variabilă NGINX $logparam pentru a stoca valoarea declarată pe propriul parametru FastCGI personalizat LOG_PARAM, care nu pare să funcționeze așa.
Dacă există vreo soluție posibilă pentru a rezolva acest lucru, ar fi foarte apreciat.
http {
includ /etc/nginx/mime.types;
aplicație de tip_default/octet-stream;
# Adăugarea variabilei nginx pentru a accesa formatul de jurnal
log_format docker „$remote_addr - $remote_user [$time_local] „$request” '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for" "$logparam"';
include conf.d/*.conf;
harta $http_upgrade $connection_upgrade {
„upgrade” implicit;
}
Server {
asculta 80 default_server;
access_log /var/log/nginx/access.log docker;
# Variabilă declarată pentru a stoca param. fastcgi
setați $logparam „”;
client_header_timeout 60;
client_body_timeout 60;
keepalive_timeout 60;
gzip off;
gzip_comp_level 4;
gzip_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript;
Locație / {
try_files $uri $uri/ /index.php?_url=$uri&$args;
}
locație ~ [^/]\.php(/|$) {
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index /index.php;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
includ /etc/nginx/fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
# Declarat parametru nou cu valoare personalizată și trecerea la variabila nginx
fastcgi_param LOG_PARAM „testare”;
setează $logparam LOG_PARAM;
}
locație ~ /\.ht {
nega totul;
}
locație ~* \.(js|css|png|jpg|jpeg|gif|ico)$ {
expira max;
log_not_found off;
access_log off;
}
}
}