Cum să remediați problema ONLYOFFICE Document Server 502 Gateway defect în spatele Nginx

Un browser afișează eroarea „502 Bad Gateway” la deschiderea unei adrese URL ONLYOFFICE Docs sau un conector Nextcloud/ownCloud nu poate ajunge la serverul de documente. În ambele cazuri, Nginx primește de obicei o solicitare, dar nu poate obține un răspuns valid de la serverul său upstream. Serverul upstream poate fi serviciul intern de documente ONLYOFFICE, un container Docker sau un alt proxy invers. Mai întâi identificați care Nginx a returnat eroarea 502; apoi testați direct următorul hop înainte de a modifica configurația.

Ghidul actual de depanare Linux al ONLYOFFICE recomandă verificarea serviciilor ds-docserviceși ds-convertera jurnalelor Document Server. Ghidul său de proxy invers solicită, de asemenea, anteturile de gazdă și protocol redirecționate. Secvența de mai jos verifică mai întâi starea serviciilor, apoi rutarea Nginx și rețeaua Docker.

1. Află care Nginx returnează eroarea 502

Instalarea pachetului ONLYOFFICE include propria configurație Nginx, iar o implementare poate avea și un proxy invers Nginx extern. Docker poate adăuga un alt hop de rețea. Aspectul paginii 502 în sine poate să nu identifice stratul, așa că comparați adresa URL publică cu o verificare locală a stării de funcționare și cu jurnalul de erori Nginx.

Pe o instalare Linux bazată pe pachete, testați endpoint-ul local al serverului de documente:

curl -i http://127.0.0.1/healthcheck

Dacă serverul este configurat să deservească ONLYOFFICE pe un port local diferit de cel implicit, utilizați acel port în schimb. O instalare sănătoasă returnează în mod normal un răspuns HTTP de succes cu true. Dacă această solicitare locală eșuează, remediați serviciul Document Server înainte de a edita un proxy extern. Dacă reușește local, dar numele de gazdă public returnează 502, concentrați-vă pe protocolul Nginx extern în amonte, protocol, anteturi și calea firewall.

Verificați ce procese dețin porturile așteptate:

sudo ss -ltnp | grep -E ':(80|443|8080|8000)\b'

Porturile variază în funcție de topologie. O mapare Docker obișnuită publică un port gazdă, cum ar fi 8080, pe portul containerului 80; o instalare de pachet poate utiliza propriul Nginx pe gazdă. Nu presupuneți că acesta 127.0.0.1:80este portul corect în amonte doar pentru că ambele servicii se află pe aceeași mașină.

2. Verificați serviciile și jurnalele ONLYOFFICE

La instalarea unui pachet Linux, inspectați serviciul de documente și convertorul:

sudo systemctl status ds-docservice ds-converter
sudo journalctl -u ds-docservice -u ds-converter --since "15 minutes ago" --no-pager

Ghidul de depanare ONLYOFFICE listează aceste servicii și identifică memoria insuficientă, un conflict de port 80 și jurnalele de servicii ca elemente de verificat atunci când serviciile Docs nu pornesc. Dacă un serviciu este oprit, verificați mai întâi eroarea sa; apoi reporniți doar serviciul afectat:

sudo systemctl restart ds-docservice

Directorul principal al jurnalelor Linux este /var/log/onlyoffice/documentserver/. Verificați jurnalul de erori Nginx și jurnalele docservice pentru mesaje precum „conexiune refuzată”, „expirare timp în amonte” sau un fișier lipsă. Acestea indică cauze diferite: o conexiune refuzată înseamnă de obicei că procesul sau portul din amonte nu este disponibil, în timp ce o expirare poate însemna că serviciul este supraîncărcat sau blocat.

Verificați și discul și memoria disponibile dacă serviciile se întrerup în mod repetat:

df -h
free -h

Nu reporniți în mod repetat un serviciu defect fără a-i revizui jurnalele; o repornire poate ascunde pentru scurt timp simptomul fără a remedia un conflict de porturi, o dependență eșuată sau o problemă de resurse.

3. Verificați dacă Nginx indică spre upstream-ul accesibil

Citiți gazda virtuală activă și confirmați adresa exactă și portul în proxy_pass. De pe mașina sau containerul pe care rulează Nginx, solicitați direct upstream-ul. De exemplu, dacă containerul publică portul 80 ca port gazdă 8080:

curl -i http://127.0.0.1:8080/healthcheck

Înlocuiți adresa exemplu cu endpoint-ul care este de fapt accesibil din proxy. Dacă Nginx rulează într-un container Docker separat, 127.0.0.1se referă la containerul Nginx în sine, nu la gazda Docker sau la containerul ONLYOFFICE. Folosiți un nume de serviciu accesibil într-o rețea Docker partajată sau adresa corectă a gazdei și portul publicat.

Verificați dacă schema upstream se potrivește cu backend-ul. Folosiți-o http://dacă listener-ul backend folosește HTTP simplu și https://numai dacă este configurat pentru TLS. Trimiterea HTTP către un port TLS sau TLS către un port HTTP simplu poate face ca un serviciu sănătos să pară indisponibil pentru Nginx.

4. Verificați anteturile redirecționate și proxy-ul WebSocket

Ghidul ONLYOFFICE pentru reverse proxy recomandă păstrarea protocolului X-Forwarded-Proto, X-Forwarded-Hostastfel încât aplicația să cunoască protocolul și numele de gazdă originale. Exemplele oficiale Nginx transmit și antete de actualizare. Dacă un proxy extern se află în fața ONLYOFFICE, comparați configurația sa cu scenariul oficial care corespunde topologiei dvs.

Un exemplu simplificat pentru un container Docker mapat la portul gazdă 8080 este prezentat mai jos. Plasați mapdirectiva în contextul Nginx httpși adaptați numele gazdei, configurația TLS și portul upstream la configurația dvs.:

map $http_upgrade $connection_upgrade {
    default upgrade;
    ''      close;
}

server {
    listen 443 ssl;
    server_name docs.example.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_http_version 1.1;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $connection_upgrade;
    }
}

Acesta este un model de referință, nu un înlocuitor drop-in pentru fiecare instalare. În special, nu îl lipiți peste configurația ONLYOFFICE Nginx din pachet fără a înțelege ce bloc de server deține porturile 80 și 443. Dacă Nginx partajează gazda cu ONLYOFFICE instalat în pachet, confirmați mai întâi că nu există nicio coliziune de porturi și direcționați proxy-ul extern către listener-ul intern configurat pentru implementarea dvs.

După editare, testați configurația înainte de a reîncărca Nginx:

sudo nginx -t
sudo systemctl reload nginx

Dacă testul de configurare eșuează, corectați fișierul și linia raportate înainte de reîncărcare. O eroare de sintaxă și un mesaj 502 din amonte sunt probleme separate; o eroare reușită nginx -tconfirmă sintaxa, nu faptul că amontele răspunde.

5. Dacă ONLYOFFICE rulează în Docker, verificați starea de funcționare și maparea porturilor.

Verificați dacă containerul rulează și ce port gazdă este publicat:

docker ps --filter name=onlyoffice
docker port <container_name_or_id>
docker logs --tail 100 <container_name_or_id>

Ghidul oficial de instalare Docker mapează porturile gazdă la portul 80 al containerului, iar exemplul său verifică jurnalele containerului dacă pagina de bun venit nu se încarcă. Folosiți portul afișat de docker portca portul gazdă în amonte. Când atât Nginx, cât și ONLYOFFICE sunt containere, plasați-le într-o rețea partajată și rutați-le către numele serviciului ONLYOFFICE și portul containerului, mai degrabă decât către adresa de loopback a gazdei.

Verificați starea de funcționare a containerului dacă fișierul Compose definește o verificare a stării de funcționare. Exemplul Compose actual din amonte verifică http://localhost:8000/info/info.jsoninteriorul containerului. Un container care „rulează” poate avea în continuare un serviciu de documente nesănătos. Dacă repornește sau este nesănătos, utilizați jurnalele pentru a investiga pornirea bazei de date, memoria și configurația înainte de a schimba proxy-ul extern.

ONLYOFFICE documentează căile persistente Docker pentru jurnale, certificate și memoria cache a fișierelor. Evitați ștergerea volumelor în timpul depanării; acestea pot conține certificate sau alte date necesare pentru recuperarea serviciului.

6. Reîncărcați, testați endpoint-ul de funcționare și retestați integrarea

După corectarea unei probleme confirmate, testați numele de gazdă public și comparați-l cu endpoint-ul local:

curl -i https://docs.example.com/healthcheck

Folosește adresa URL reală a serverului de documente. Un răspuns reușit atât la adresa locală upstream, cât și la adresa publică de gazdă arată că Nginx poate ajunge la backend și poate returna răspunsul său privind starea de funcționare. Apoi, deschide pagina de bun venit a serverului de documente și reîncearcă acțiunea care inițial a eșuat în Nextcloud, ownCloud sau celălalt conector al tău.

Dacă verificarea stării de funcționare reușește, dar conectorul raportează în continuare o eroare, problema rămasă poate fi în afara căii Nginx 502 - de exemplu, adresa URL a conectorului, încrederea TLS sau setările JWT. Comparați aceste valori cu configurația conectorului și a ONLYOFFICE, în loc să continuați să modificați orbește timeout-urile proxy.

Diagnostic rapid

RezultatCea mai utilă verificare următoare
Verificarea locală a stării de sănătate eșueazăVerificați ds-docservice, ds-converter, porturile, resursele și jurnalele serverului de documente.
Verificarea stării de funcționare locale funcționează; URL-ul public returnează codul 502Verificați Nginx-ul extern proxy_pass, portul accesibil, protocolul și calea către firewall.
Funcționează corect starea Docker pe partea gazdă; containerul proxy eșueazăVerificați apartenența la rețeaua Docker și utilizați numele containerului/serviciului în loc de proxy-container localhost.
Verificarea stării de funcționare funcționează prin URL-ul public; doar integrarea eșueazăVerificați adresa URL a conectorului, încrederea în certificat și configurația JWT.

Referințe oficiale

Lasă un comentariu

Importul și exportul Office Outlook 2010: Mutarea datelor cu un fișier PST

Importul și exportul Office Outlook 2010: Mutarea datelor cu un fișier PST

Aflați cum să importați un fișier PST în Outlook 2010 sau să exportați e-mailuri, contacte, calendar și activități. Urmați meniurile corecte și evitați folderele lipsă sau duplicatele.

Modificarea înălțimii și lățimii grilei în Word 2010

Modificarea înălțimii și lățimii grilei în Word 2010

Aflați cum să ajustați înălțimea și lățimea grilei în Word 2010, să modificați frecvența liniilor vizibile și să setați spațierea orizontală și verticală subiacentă a grilei de desen.

Recuperarea unei parole Outlook PST cu Nucleus Kernel

Recuperarea unei parole Outlook PST cu Nucleus Kernel

Recuperează o parolă Outlook PST uitată cu pașii actuali ai Kernel, inclusiv cum să identifici fișierul corect, să faci o copie de rezervă și să verifici limitele instrumentului.

Cum se inserează o pagină web live într-un diapozitiv PowerPoint

Cum se inserează o pagină web live într-un diapozitiv PowerPoint

Utilizați programul de completare LiveWeb pentru a plasa un site web pe un diapozitiv PowerPoint, a seta dimensiunea și comportamentul de reîmprospătare și a verifica compatibilitatea înainte de prezentare.

Adăugați sărbători naționale în calendarul Outlook

Adăugați sărbători naționale în calendarul Outlook

Adăugați sărbători specifice fiecărei țări în noul Outlook, Outlook pe web sau Outlook clasic. Aflați cum să evitați evenimentele duplicate și să verificați dacă lipsesc datele din perioada 2026-2027.

Access 2010: Exportul unui tabel de bază de date în Excel 2010

Access 2010: Exportul unui tabel de bază de date în Excel 2010

Exportați un tabel Access 2010 în Excel 2010, alegeți dacă doriți să includeți formatarea, salvați pașii de export reutilizabili și verificați problemele comune legate de transferul de date.

Șabloane Microsoft Word 2010: Găsiți-le, utilizați-le și creați-le

Șabloane Microsoft Word 2010: Găsiți-le, utilizați-le și creați-le

Găsiți șabloane Word 2010 încorporate, începeți un document dintr-un fișier .dotx descărcat și salvați un șablon personalizat reutilizabil fără a suprascrie lucrarea.

Cum să organizezi o prezentare PowerPoint 2010 cu secțiuni

Cum să organizezi o prezentare PowerPoint 2010 cu secțiuni

Utilizați secțiunile PowerPoint 2010 pentru a grupa diapozitive corelate, a redenumi și a rearanja grupuri și a naviga printr-un pachet lung de diapozitive fără a modifica conținutul diapozitivelor.

Cum să eliminați metadatele și conținutul ascunse dintr-un document Word

Cum să eliminați metadatele și conținutul ascunse dintr-un document Word

Folosește Inspectorul de documente din Word pentru a revizui detaliile autorului, comentariile, modificările urmărite, textul ascuns și alte date înainte de partajare și pentru a afla ce poate omite scanarea.

Setări de export și import pentru panglică și bara de instrumente cu acces rapid în Office 2010

Setări de export și import pentru panglică și bara de instrumente cu acces rapid în Office 2010

Mutați filele personalizate din panglică și comenzile din bara de instrumente Acces rapid în Office 2010 cu un fișier .exportedUI și protejați setările deja existente pe PC-ul de destinație.