nginx als Reverse-Proxy mit Gitea erzeugt "Bad Gateway" (Fehler 502) beim Posten von Issues

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Marcus Gräfe.

    nginx als Reverse-Proxy mit Gitea erzeugt "Bad Gateway" (Fehler 502) beim Posten von Issues

    Ich habe derzeit folgendes Problem, evtl. hatte zufällig mal jemand ein ähnliches und kann mich in die richtige Richtung lenken. Die Google-Suchergebnisse brachten mir bisher keine Lösung.

    Ich weiß nicht, ob mein Fehler Gitea oder nginx betrifft, eins von beiden auf jeden Fall, wobei ersteres evtl. naheliegender ist. Gitea 1.19.3, Ubuntu 20.04 LTS x86. Der Fehler tritt auf, seit ich vor einigen Wochen Gitea von irgendeiner 1.17er Version auf die aktuelle aktualisiert habe.

    Seitdem kommt nach jedem Posten eines neuen Issues eine weiße Seite von nginx mit "Bad Gateway" und der Fehlernummer "502". Das Issue wurde aber gepostet. Drückt man F5, wird es 2x gepostet. Ansonsten funktioniert Gitea im Prinzip einwandfrei, nur hin und wieder kommt ebenfalls eine nginx-Fehlermeldung, wenn ich Issues aufrufe. Ich meine aber, das wäre dann Fehler 500, bin aber gerade nicht sicher. Ansonsten kann ich alles fehlerfrei aufrufen und Antworten auf Issues posten sowie Issues bearbeiten.

    Gitea ist die neueste Version, Git (was hier aber irrelevant sein dürfte) ebenfalls. nginx ist die Version von Ubuntu 20, aber nicht mit den neuesten Updates (Update geht leider gerade aus "Entscheidungsgründen" nicht). Gitea und nginx wurden natürlich bereits neugestartet, der ganze Server allerdings nicht (geht gerade auch nicht).

    Irgendwelche Ideen? Gitea läuft auf dem Standardport 3000, ohne SSL/TLS und ist nur im lokalen Netzwerk verfügbar.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ () aus folgendem Grund: x64 ersetzt durch x86

    Hm von der Beschreibung her würde ich mal raten, das gitea vorm zurücksenden der Antwort in ein Fehler läuft.
    Bekommst du eine Fehlermeldung, wenn du die lokale Adresse benutzt und ein Issue erstellst?
    Findet sich eventuell etwas in den Logs von gitea?
    Ich habe es heute endlich testen können. Ich bin direkt über die IP und Port 3000 gegangen, um nginx zu umgehen, Also, der Grund, warum nginx diese Fehlermeldung wirft, ist der, dass Gitea nach einem Post einfach neustartet. D. h. für einen Moment läuft Gitea nicht, daher kommt der Fehler. nginx trifft daher keine Schuld, es liegt ganz bei Gitea.

    Ich habe daher das Logging eingeschaltet (Level: Debug) und mir das Log angeschaut. Im folgenden der relevante Part. Ganz oben das Posten eines Issues. Nach dem gezeigten kommen die Einträge, die bei jedem Neustart von Gitea geloggt werden (hier nicht mit angegeben). Es ist für mich kein Absturz ersichtlich.

    Quellcode

    1. 2023/07/01 14:14:38 ...eb/routing/logger.go:98:func1() [I] [64a018ad] router: completed POST /mg/test/issues/new for 10.10.1.2:54684, 303 See Other in 646.3ms @ repo/issue.go:1097(repo.NewIssuePost)
    2. 2023/07/01 14:14:38 ...dules/git/command.go:255:Run() [D] [64a018ae] /var/lib/gitea/data/gitea-repositories/mg/test.git: /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs
    3. 2023/07/01 14:14:38 ...dules/git/command.go:255:Run() [D] [64a018ae] /var/lib/gitea/data/gitea-repositories/mg/test.git: /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs
    4. 2023/07/01 14:14:38 ...dules/git/command.go:255:Run() [D] [64a018ae] /var/lib/gitea/data/gitea-repositories/mg/test.git: /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs
    5. 2023/07/01 14:14:38 ...dules/git/command.go:255:Run() [D] [64a018ae] /var/lib/gitea/data/gitea-repositories/mg/test.git: /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs
    6. 2023/07/01 14:14:38 ...dules/git/command.go:255:Run() [D] [64a018ae] /var/lib/gitea/data/gitea-repositories/mg/test.git: /usr/bin/git -c protocol.version=2 -c credential.helper= -c filter.lfs.required= -c filter.lfs.smudge= -c filter.lfs
    7. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of ISSUE_TEMPLATE: object does not exist [id: , rel_path: ISSUE_TEMPLATE]
    8. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of issue_template: object does not exist [id: , rel_path: issue_template]
    9. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of .gitea/ISSUE_TEMPLATE: object does not exist [id: , rel_path: .gitea]
    10. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of .gitea/issue_template: object does not exist [id: , rel_path: .gitea]
    11. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of .github/ISSUE_TEMPLATE: object does not exist [id: , rel_path: .github]
    12. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of .github/issue_template: object does not exist [id: , rel_path: .github]
    13. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of .gitlab/ISSUE_TEMPLATE: object does not exist [id: , rel_path: .gitlab]
    14. 2023/07/01 14:14:38 ...ules/context/repo.go:1082:IssueTemplatesErrorsFromDefaultBranch() [D] [64a018ae] get sub tree of .gitlab/issue_template: object does not exist [id: , rel_path: .gitlab]

    Die Einträge mit IssueTemplatesErrorsFromDefaultBranch haben vmtl. nichts damit zu tun, sieht mir nicht nach richtigen Fehlern aus. Es gibt einfach keine Templates für Issues.

    Noch irgendwelche Ideen? In meiner eigenen Gitea-Installation (die hier läuft woanders) gibt's das Problem nicht (selbe Version, aber älteres Betriebssystem).

    EDIT: Auch in einer VM konnte ich keine Probleme feststellen, aber die hat auch Ubuntu 18 (wie meine Hauptinstallation), kein Ubuntu 20, wie die Probleminstallation. Ein relevanter Unterschied könnte noch die Architektur sein. Die beiden funktionstüchtigen Server sind x64, der Problemserver x86.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()

    Ich konnte dazu leider nichts finden, aber was manchmal hilft, ist die Anwendung im Terminal laufen zu lassen und dort versuchen den Crash auszulösen.
    Eventuell wurde der Fehler nicht richtig abgefangen und wird deswegen nicht geloggt?
    Habe die Anwendung nun im Terminal laufen lassen und konnte dadurch die wahre Fehlermeldung sehen: panic: unaligned 64-bit atomic operation

    Das führte mich zu mehreren offenen Issues im Gitea-Repository bei Github, u. a. github.com/go-gitea/gitea/issues/23617

    Ein bekannter Bug in Gitea auf 32-Bit-Betriebssystemen, der grundsätzlich wohl schon behoben ist, aber noch nicht für die aktuelle Stable-Version.

    Danke @slice, du hast mich auf den richtigen Weg gebracht.
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum
    Gerne doch und du warst mit deiner Vermutung am Ende gar nicht so daneben :)
    Also dem "Ein relevanter Unterschied könnte noch die Architektur sein" ^^