Ho sentito parlare dell’utilizzo di un reindirizzamento 301, ma sto avendo difficoltà a individuare la directory di configurazione di Nginx sul mio server. Qualsiasi soluzione alternativa o guida sarebbe molto apprezzata.
Grazie @Lilly. Vorrei sapere se i permalink possono gestire anche un cambio di dominio completo. Giusto per chiarire, stiamo passando da abc.domain1.com a xyz.domain2.com. Sia il sottodominio che il dominio stanno cambiando. Ho letto questa discussione e volevo confermare:
Stai cercando di reindirizzare un argomento Discourse esistente a un URL esterno? Non è per questo che sono progettati i permalink. Sono abbastanza sicuro che non puoi reindirizzare nulla sotto /t.
Se vuoi che le persone che visitano https://hoidap.cheng.vn/t/cach-cua-do-nu-bao-binh-don-gian/70 2 vengano reindirizzate a https://cunghoangdao.info, penso che la cosa migliore sia modificare il post e dire alle persone di cliccare sul link per andare sull’altro sito.
RewriteEngine On
RewriteRule ^(.*)$ https://new.example.com/$1 [R=301,L]
Mi era sfuggita la parte in cui stai solo spostando Discourse e non migrando. Dato che stai solo spostando domini, non hai bisogno dei reindirizzamenti permalink.
Era quello che pensavo originariamente, ma non riesco a trovare la cartella nginx in nessuna parte della directory /etc. Sto cercando nel posto sbagliato?
Grazie @RGJ per la guida. Ho finito per fare un dominio di livello direttamente dal nostro provider di nomi di dominio, e ha funzionato. I vecchi link stanno reindirizzando correttamente ai nuovi link.
Ecco il metodo che utilizzo per un reindirizzamento completo dopo una modifica del dominio, ho mescolato alcune soluzioni offerte in questo forum.
Nell’app.yml, alla fine aggiungo i blocchi after_web_config e after_ssl:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
after_web_config:
- replace:
filename: /etc/nginx/nginx.conf
from: /sendfile.+on;/
to: |
server_names_hash_bucket_size 64;
sendfile on;
- file:
path: /etc/nginx/conf.d/discourse_redirect_1.conf
contents: |
server {
listen 80;
listen 443 ssl;
server_name old-domain.com;
return 301 $scheme://new-domain.com$request_uri;
}
after_ssl:
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--keylength/
to: " -d old-domain.com --keylength"
## Qualsiasi comando personalizzato da eseguire dopo la build
run:
- exec: echo "Inizio dei comandi personalizzati"
## Se si desidera impostare l'indirizzo email 'Da' per la prima registrazione, decommentare e modificare:
## Dopo aver ricevuto la prima email di registrazione, ri-commentare la riga. Deve essere eseguita solo una volta.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Fine dei comandi personalizzati"
Reindirizzerà i vecchi link ai nuovi forum, senza problemi SSL.