Hola, tengo un problema al instalar Discourse. Cada vez que intento conectarme a mi sitio web, obtengo una redirección infinita 301.
Aquí está la configuración de Nginx de mi HOST para la instancia de Discourse:
server
{
server_name dis.ob**********ie.fr;
access_log /var/log/nginx/dis_access.log;
error_log /var/log/nginx/dis_error.log;
location / {
proxy_pass http://dis.ob**********ie.fr:8150;
#http://unix:/var/discourse/shared/standalone/nginx.http.sock:;
proxy_set_header Host $http_host;
proxy_http_version 1.1;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
}
listen 443 ssl; # gestionado por Certbot
ssl_certificate /etc/letsencrypt/live/dis.ob**********ie.fr/fullchain.pem; # gestionado por Certbot
ssl_certificate_key /etc/letsencrypt/live/dis.ob**********ie.fr/privkey.pem; # gestionado por Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # gestionado por Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # gestionado por Certbot
}
server
{
if ($host = dis.ob**********ie.fr) {
return 301 https://$host$request_uri;
} # gestionado por Certbo
server_name dis.ob**********ie.fr;
listen 80;
return 404; # gestionado por Certbot
}
Aquí está mi app.yml:
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
- "templates/web.socketed.template.yml"
## Descomenta estas dos líneas si deseas añadir Lets Encrypt (https)
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
## ¿Qué puertos TCP/IP debe exponer este contenedor?
## Si deseas que Discourse comparta un puerto con otro servidor web como Apache o nginx,
## consulta https://meta.discourse.org/t/17247 para más detalles
expose:
- "8150:80" # http
params:
db_default_text_search_config: "pg_catalog.english"
## Establece db_shared_buffers a un máximo del 25% de la memoria total.
## será establecido automáticamente por bootstrap según la RAM detectada, o puedes anularlo
db_shared_buffers: "1024MB"
## puede mejorar el rendimiento de la ordenación, pero aumenta el uso de memoria por conexión
#db_work_mem: "40MB"
## ¿Qué revisión de Git debe usar este contenedor? (por defecto: tests-passed)
#version: tests-passed
env:
LC_ALL: fr_FR.UTF-8
LANG: fr_FR.UTF-8
LANGUAGE: fr_FR.UTF-8
EMBER_CLI_PROD_ASSETS: 1
# DISCOURSE_DEFAULT_LOCALE: en
## ¿Cuántas solicitudes web concurrentes se admiten? Depende de la memoria y los núcleos de CPU.
## será establecido automáticamente por bootstrap según las CPUs detectadas, o puedes anularlo
UNICORN_WORKERS: 4
## TODO: El nombre de dominio al que responderá esta instancia de Discourse
## Requerido. Discourse no funcionará con un número IP simple.
DISCOURSE_HOSTNAME: dis.ob**********ie.fr
## Descomenta si deseas que el contenedor se inicie con el mismo
## nombre de host (-h option) que el especificado arriba (por defecto "$hostname-$config")
DOCKER_USE_HOSTNAME: true
## TODO: Lista de correos electrónicos separados por comas que se convertirán en administradores y desarrolladores
## en el registro inicial, por ejemplo 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'admin@ob**********ie.fr
## TODO: El servidor de correo SMTP utilizado para validar nuevas cuentas y enviar notificaciones
# Se requieren la DIRECCIÓN SMTP, el nombre de usuario y la contraseña
# ADVERTENCIA: el carácter '#' en la contraseña SMTP puede causar problemas.
DISCOURSE_SMTP_ADDRESS: mail.ob**********ie.fr
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: discourse@ob**********ie.fr
DISCOURSE_SMTP_PASSWORD: "*********************"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (opcional, por defecto true)
DISCOURSE_SMTP_DOMAIN: ob**********ie.fr
DISCOURSE_NOTIFICATION_EMAIL: noreply@ob**********ie.fr
## Si añadiste la plantilla de Lets Encrypt, descomenta abajo para obtener un certificado SSL gratuito
LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
## La dirección CDN http o https para esta instancia de Discourse (configurada para tirar)
## consulta https://meta.discourse.org/t/14857 para más detalles
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
## La clave de la dirección IP de geolocalización de Maxmind para la búsqueda de direcciones IP
## consulta https://meta.discourse.org/t/-/137387/23 para más detalles
#DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
## El contenedor Docker no tiene estado; todos los datos se almacenan en /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## Los plugins van aquí
## consulta https://meta.discourse.org/t/19157 para más detalles
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
## Cualquier comando personalizado para ejecutar después de la compilación
run:
- exec: echo "Inicio de comandos personalizados"
## Si deseas establecer la dirección de correo electrónico 'De' para tu primer registro, descomenta y cambia:
## Después de recibir el primer correo electrónico de registro, vuelve a comentar la línea. Solo necesita ejecutarse una vez.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Fin de comandos personalizados"
Muchas gracias a todos por el apoyo ![]()