[Fix] nginx: [emerg] “load_module” directive is specified too late in nginx.conf

Instalarea modulelor pentru Apache si NGINX necesita schimbari ale fisierelor de configuratie. nginx.conf, in cazul nostru.

Pentru userii novice, schimbarea unor linii si directive in nginx.conf poate fi sport extrem, mai ales daca nu inteleg cum functioneaza blocurile NGINX.

Eroarea “nginx: [emerg] “load_module” directive is specified too late in nginx.conf” este cea mai frecventa atunci cand se adauga un modul de NGINX dupa ce a fost instalat. Rezolvarea ei este foarte simpla si nu trebuie sa facem altceva decat sa punem liniile modulelor in partea superioara a nginx.conf.

In comparatie cu alte fisiere de configurare, NGINX executa directivele, definitiile si conditiile din ordinea in care ele sunt trecute in fisierul nginx.conf.

Un exemplu concret. Daca instalam modulul Brotli pentru NGINX, liniile de incarcare a modulelor trebuie sa fie imediat dupa id-ul procesului NGINX, astfel ca urmatoarele linii specifice sa tina cont de aceste module si procesul sa ruleze corect.


user nginx;
worker_processes 2;
pid /var/run/nginx.pid;
load_module modules/ngx_http_brotli_filter_module.so;
load_module modules/ngx_http_brotli_static_module.so;
events {
worker_connections 1024;
}
....

Dupa ce ati schimbat locul liniilor de incarcare a modulelor, executati comanda nginx -t in SSH pentru a va asigura ca totul este ok si nu exista alte erori. Restartati serviciul NGINX pentru ca schimbarile din nginx.conf sa aiba efect.

 

[Fix] nginx: [emerg] “load_module” directive is specified too late in nginx.conf

About the author

Stealth

Pasionat de tot ce inseamna gadget si IT, scriu cu placere pe stealthsettings.com din 2006 si imi place sa descopar alaturi de voi lucruri noi despre calculatoare si sistemele de operare macOS, Linux, Windows, iOS si Android.

Leave a Comment