Attualmente ho il seguente problema e sarei davvero felice se qualcuno potesse aiutarmi a trovare l’approccio giusto.
Ho installato discourse su un server Ubuntu 21.10 su Vultr
Ho utilizzato la configurazione predefinita e ho già creato un certificato Let’s Encrypt (per www.example.com) durante l’installazione
Il mio obiettivo è che il mio forum sia raggiungibile solo tramite www → www.example.com e non example.com
Situazione attuale:
→ http://example.com reindirizza correttamente (301) a https://www.example.com
→ http://www.example.com reindirizza correttamente (301) a https://www.example.com
→ https://example.com genera un errore di certificato e non viene reindirizzato al corretto https://www.example.com (il certificato è stato emesso per www.example.com e non per example.com)
Qual è il miglior approccio per far reindirizzare https://example.com a https://www.example.com e come posso raggiungere il mio obiettivo?
Questa è un’area in cui non sono molto ferrato. Quale sarebbe il modo consigliato? Attualmente ho un record A sia per il dominio che per il sottodominio www che risolvono al mio droplet di Digital Ocean.
Solo un breve aggiornamento per farvi sapere cosa ha funzionato per me.
Ho provato, ma questo non ha funzionato per me. Sembrava che non fosse stato rilasciato alcun certificato aggiuntivo.
Ho anche provato a risolvere il mio problema seguendo questo suggerimento, ma anche questo non ha funzionato per me.
L’unica cosa che ha risolto il mio problema finora è stato seguire le istruzioni qui http://www.forcewww.com/
Tuttavia, penso che questa non sia ancora una soluzione desiderabile, poiché si basa su un servizio esterno. Naturalmente, è gratuito, ma dovrai trovare una nuova soluzione una volta che questo servizio sarà fuori uso.
Spero che tu non mi fraintenda @michaeld, è davvero una soluzione bella e facile quella che offri e la apprezzo molto.
Sarebbe una cosa fantastica, se potessi decidere durante l’installazione standard di utilizzare solo una versione www o non www per renderci la vita un po’ più facile
Anche se non l’ho testato nel mese appena trascorso, sono abbastanza sicuro che funzioni. Se il tuo DNS non era configurato correttamente e l’hai eseguito molte volte, allora sei stato limitato.
Intendi “e richiedere un certificato con entrambi i nomi host?” È molto difficile. La probabilità che ciò causi problemi a molte persone che non sanno come configurare il DNS in quel modo è molto, molto alta.
Se crei un certificato sia per la versione apex che per la versione www, avrai coperto entrambi. :smiley Come hai affermato, il certificato non include il tuo dominio apex… da qui l’errore.
I tuoi reindirizzamenti dovrebbero essere:
http://example.com → https://example.com
http://www.example.com → https://www.example.com.
Quindi reindirizza https://example.com → https://www.example.com (il tuo dominio preferito dichiarato).
Quindi, indipendentemente da chi digita il dominio apex o la versione www, atterrerà sul tuo https://www.example.com senza errori. La best practice è includere sia l’apex che la versione www sul tuo certificato. Assicurati solo che il tuo certificato modificato/nuovo sia quello servito dal tuo server e non quello vecchio.
Capisco. E ora che l’hai menzionato, inizierò a ricordarmene: questo è stato il secondo motivo per cui ho messo Discourse dietro un Nginx “normale”. Il primo motivo è stata la necessità di effettuare qualche filtro. Beh, la mia soluzione non è niente di speciale o tecnicamente impegnativa, ma non è così popolare in questo circolo.
Devo dire che Docker non è una soluzione molto user-friendly se una cosa così banale deve essere fatta utilizzando un servizio web di terze parti. Altrimenti Docker deve essere molto utile, immagino, a meno che non diventi così popolare.
Grazie per il consiglio @pfaffman. Ci riproverò durante il fine settimana.
E riguardo al secondo argomento. Capisco il tuo punto, ma potrebbe essere qualcosa come un’impostazione avanzata o opzionale, perché è davvero fondamentale che lo stesso contenuto sia raggiungibile solo tramite un dominio.
In realtà non lo è (a meno che Discourse stesso non funzioni). Ma se ti riferisci alla SEO e a Google, un problema di sottodominio non è così grave da tempo. Google può conviverci, perché c’è solo un dominio: uno è un FQDN “stub” e uno con www è quello reale.