Încerc să configurez un server proxy invers folosind nginx 1.20.1 pe Fedora Server 35, dar tot ce am încercat până acum are ca rezultat o eroare:
[root@proxy nginx]# curl -I -H „Gazdă: www.example.com” http://10.0.19.1/
HTTP/1.1 500 Eroare internă server
Server: nginx/1.20.1
Data: miercuri, 10 noiembrie 2021 19:54:39 GMT
Tip de conținut: text/html; set de caractere=UTF-8
Conexiune: păstrați-vă în viață
X-Powered-By: PHP/8.0.12
10.0.19.1 este adresa serverului nginx, iar 10.0.20.1 este un server Apache pe care încerc să îl proxy. Dacă rulez aceeași comandă curl ca mai sus, dar folosind 10.0.20.1 pentru URL, funcționează bine, așa că cred că este sigur să excludem problemele de conectivitate între cele două servere și orice problemă cu gazda Apache. Jurnalul de erori nginx este gol.
nginx -t
Nu găsește probleme cu fișierele de configurare (reproduse mai jos). De asemenea, am setat SELinux la permisiv pentru moment pentru a elimina asta ca cauză.
Am creat o configurație simplă (non-proxy) de server pentru a testa, și asta a funcționat OK, așa că fiind nou în nginx, am senzația că aceasta este probabil o problemă foarte trivială cu fișierul meu proxy.conf.
nginx.conf:
utilizator nginx;
worker_proceses auto;
error_log /var/log/nginx/error.log warn;
pid /run/nginx.pid;
include /usr/share/nginx/modules/*.conf;
evenimente {
conexiuni_muncitor 1024;
}
http {
log_format principal „$remote_addr - $remote_user [$time_local] „$request” '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log principal;
sendfile activat;
tcp_nopush activat;
tcp_nodelay activat;
keepalive_timeout 65;
types_hash_max_size 4096;
includ /etc/nginx/mime.types;
aplicație de tip_default/octet-stream;
includ /etc/nginx/conf.d/*.conf;
}
conf.d/proxy.conf:
Server {
asculta 80;
nume_server www.example.com;
Locație / {
proxy_pass http://10.0.20.1;
}
}