Rotta personalizzata ignora alcuni URL da discourse

Ciao,

Sto cercando di ignorare URL specifici su questo percorso personalizzato utilizzando il codice seguente.
(file routes.rb)

get '/*path' => 'static#custom_redirect', constraints: lambda { |request| !request.path.include?('/preferences/' ) || !request.path.include?('/custom_sso_login/') || !request.path.include?('/t/' ) || !request.path.include?('/admin/') || !request.path.include?('/singup') || !request.path.include?('/login')}

“Non funziona come previsto. Hai esperienza con questo problema?”

Ciao :slight_smile:

Qual è il contesto di ciò che stai cercando di ottenere?

Ciao @Canapin

Sto utilizzando una funzionalità personalizzata per l’argomento URL di Drupal mostrato nel sito discourse.

Quando un utente visita il vecchio URL del sito Drupal in un browser web, il sistema controlla prima nei percorsi personalizzati. Ignora determinati URL specificati come menzionato nei percorsi personalizzati, oppure passa alla funzione ‘custom_redirect’. Nella funzione ‘custom_redirect’, trova l’argomento in Discourse e reindirizza il browser a quel link.

Se stai cercando di reindirizzare gli URL di Drupal a 301 verso l’argomento Discourse corretto, allora vorrai usare permalink redirects e probabilmente permalink normalizations.

Se hai utilizzato uno script di importazione, questo dovrebbe aver creato dei permalink, che puoi visualizzare su /admin/customize/permalinks. Se non funzionano, puoi utilizzare una normalizzazione dei permalink per correggerli.

@pfaffman
Non sto usando permalink in discourse

Il mio codice funziona per i post del vecchio sito URL reindirizzati a discourse topic o post

Ma con questo codice bloccano alcuni URL come login, signup, altri form

get ‘/*path’ => ‘static#custom_redirect’, constraints: lambda { |request| !request.path.include?(‘/preferences/’ ) || !request.path.include?(‘/custom_sso_login/’) || !request.path.include?(‘/t/’ ) || !request.path.include?(‘/admin/’) || !request.path.include?(‘/singup’) || !request.path.include?(‘/login’)}

Hai qualche idea di cosa mi stia sfuggendo!!