Il slug della categoria Unicode causa un errore 404

Sta accadendo sia nella mia istanza di produzione che in quella di sviluppo.

Passaggi per riprodurre:

  1. Modifica o crea una categoria con uno slug Unicode
  2. Prova a modificare le impostazioni della categoria
  3. Ricevi un errore 404

Risposta di http://localhost:4200/c/测试/find_by_slug.json:

{
"errors": [
"L'URL o la risorsa richiesta non è stata trovata."
],
"error_type": "not_found",
"extras": {
"html": "<div class=\"page-not-found\">\n  <h1 class=\"title\">Ops! Questa pagina non esiste o è privata.</h1>\n\n\n</div>\n\n\n\n<div class=\"row page-not-found-topics\">\n    <div class=\"recent-topics\">\n      <h2 class=\"recent-topics-title\">Recenti</h2>\n        <div class='not-found-topic'>\n          <a href=\"/t/welcome-to-discourse/7\">Benvenuto su Discourse</a>\n        </div>\n      <a href=\"/latest\" class=\"btn btn-default\">Altro&hellip;</a>\n    </div>\n</div>\n\n\n  <div class=\"row\">\n    <div class=\"page-not-found-search\">\n      <h2>Cerca in questo sito</h2>\n      <p>\n        <form action='/search' id='discourse-search'>\n          <input type=\"text\" name=\"q\" value=\"\">\n          <button class=\"btn btn-primary\">Cerca</button>\n        </form>\n      </p>\n    </div>\n  </div>\n\n  <link rel=\"preload\" href=\"/assets/onpopstate-handler.js?1621234483.753622\" as=\"script\">\n<script src=\"/assets/onpopstate-handler.js?1621234483.753622\"></script>\n\n"
}
}

Informazioni aggiuntive:

  • L’impostazione unicode usernames è disabilitata
  • Il problema persiste anche abilitando unicode usernames
  • allowed unicode username characters = \p{Han}

Cambiare l’impostazione metodo di generazione dello slug su codificato ha risolto il problema, ma non vorrei davvero uno slug codificato per l’URL del nostro argomento.

1 Mi Piace