Zufällige 404-Fehler beim Bearbeiten von Beiträgen

Ich bekomme zufällige 404-Fehler beim Bearbeiten von Antworten in meinem Forum.

Wenn die Bearbeitungen funktionieren, wird eine PUT-Anfrage an den Endpunkt /posts/:post_id mit einer 200-Antwort gesendet.

Wenn sie jedoch nicht funktionieren, sehe ich in den Entwicklertools eine PUT-Anfrage an /post_replies/:post_id, die einen 404-Fehler zurückgibt. Wenn ich die Seite aktualisiere, verschwinden die Fehler und ich kann die Bearbeitung korrekt speichern (über /posts/:post_id, wobei sich die :post_id nicht ändert).

Ich bin mir nicht sicher, ob es eine spezielle Bedingung gibt, die /posts versehentlich in /post_replies verwandelt, oder ob es sich um ein anderes Problem handelt. Ich habe kürzlich den RAM meines Servers vervierfacht und in den Logs nichts Ungewöhnliches bemerkt.

Jede Hilfe wird geschätzt.

2 „Gefällt mir“

Ich erhalte weiterhin diese zufälligen Fehler, wenn ich versuche, eine Bearbeitung für Beiträge anderer Personen zu speichern. Das tritt sowohl bei alten als auch bei neuen Beiträgen auf, aber immer zufällig:

Und es verschwindet, wenn ich die Seite neu lade und die Bearbeitung speichere:

Ich nutze die neueste Version und kann bestätigen, dass das Problem weiterhin besteht: Beim Versuch, eine Bearbeitung an einem Beitrag eines anderen Benutzers zu speichern, wird zufällig ein Dialogfeld mit der Meldung not_found ausgelöst:

Die angeforderte URL oder Ressource konnte nicht gefunden werden.

Wenn ich die Seite neu lade und erneut auf „Bearbeitung speichern

Diese beiden Anfragen führen PUT-Operationen an unterschiedlichen URLs aus.

Richtig. Aber warum? Ich klicke im selben Beitrag auf denselben „Editieren speichern“-Button. Der einzige Unterschied ist ein Seitenneuladen.

Vielleicht könntest du beim nächsten Mal den Browser-Backtrace überprüfen, wenn es auftritt? Da verschiedene Endpunkte angesprochen werden, könnte es über unterschiedliche Methoden in der EmberJS-App laufen.

1 „Gefällt mir“

@Falco Das ist gerade wieder passiert. Das ist alles, was ich sehe, wenn ich die Konsole nach dem Fehler öffne:

image

Und wenn ich es erneut mit geöffneter Konsole speichere:

Dann aktualisiere ich die Seite, und es erlaubt mir erneut zu bearbeiten:

image

Dies ist der Pfad des Initiators (VM73:1 Script):

1 „Gefällt mir“

Ich habe gerade auf 2.7.0.beta2 aktualisiert, und das Problem besteht weiterhin:

  • Versuche, die Post-Antwort 47994 zu bearbeiten
  • PUT https://mydomain.com/post_replies/47994 => 404 Die angeforderte URL oder Ressource konnte nicht gefunden werden. In der Konsole: Ressourcen konnte nicht geladen werden: Der Server antwortete mit dem Status 404 () /post_replies/47994:1
  • Seite neu laden
  • Versuche, die Post-Antwort 47994 zu bearbeiten
  • PUT https://mydomain.com/posts/47994 => 200 erfolgreich

Falls weitere Informationen hilfreich wären, um das Problem zu debuggen, stelle ich diese gerne zur Verfügung.

Das ist heute schon zum dritten Mal in weniger als einer Stunde passiert :sweat_smile:

Gibt es noch etwas, das ich tun kann, um bei der Fehlersuche zu helfen?

@Falco Ich habe endlich herausgefunden, wie man diesen Fehler konsistent reproduzieren kann:

  1. Deaktiviere die Option enable filtered replies view.
  2. Klicke auf den Pfeil bei einer Antwort:
  3. Klicke auf den Pfeil, um zur ursprünglichen Nachricht zu springen: image
  4. Klicke auf das Bearbeitungssymbol:
  5. Nimm eine Änderung vor und klicke auf „Änderungen speichern“. Es erscheint ein Dialogfenster mit der Meldung, dass die URL oder die Ressource nicht gefunden wurde (404).
4 „Gefällt mir“

Danke @Nacho_Caballero, die spezifischen Schritte waren sehr hilfreich. Ich habe einen PR mit einer Korrektur eingereicht: FIX: 404 error when editing an expanded reply by pmusaraj · Pull Request #12504 · discourse/discourse · GitHub

7 „Gefällt mir“

Kein Problem! So eine einfache Lösung :sweat_smile:

3 „Gefällt mir“

Wie immer vielen Dank für deine Geduld mit uns, Nacho – wenn du sehr detaillierte Reproduktionsschritte bereitstellst, können wir fast immer eine Lösung herbeizaubern!

4 „Gefällt mir“