No prefijado de subcarpeta para algunos recursos

Versión: v2.6.0.beta2
Configuración: Configuración de subcarpeta /forum/discourse ejecutándose en Docker con proxy inverso Apache en el host /forum/discourse

He seguido las instrucciones aquí para la configuración de subcarpeta y la instalación funciona correctamente.

Sin embargo, algunas URLs de recursos no tienen el prefijo correcto y generan errores 404. Por ejemplo, la URL del logotipo de encabezado predeterminado debería ser /forum/discourse/images/discourse-logo-sketch.png, pero Discourse utiliza /images/discourse-logo-sketch.png.

No estoy muy familiarizado con la base de código, pero creo que esto debería resolverse envolviendo application_logo_url con UrlHelper.absolute() aquí.

Añadiré más información al tema si encuentro otras instancias del problema. Háganme saber si esto es realmente un problema o si estoy haciendo algo mal. Estaré encantado de enviar un PR.

app.yml
templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"

expose:
# el host tiene un proxy inverso en estos puertos
  - "8080:80"   # http
  - "8443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"
  db_shared_buffers: "3072MB"

env:
  LANG: en_US.UTF-8
  UNICORN_WORKERS: 8
  DISCOURSE_HOSTNAME: mydomain.com
  DISCOURSE_RELATIVE_URL_ROOT: /forum/discourse
  DISCOURSE_DEVELOPER_EMAILS: 'info@mydomain.com'
  DISCOURSE_SMTP_ADDRESS: mydomain.com
  DISCOURSE_SMTP_PORT: 25
  DISCOURSE_SMTP_USER_NAME: user
  DISCOURSE_SMTP_PASSWORD: pass

## El contenedor Docker es sin 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

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"
## https://meta.discourse.org/t/subfolder-support-with-docker/30507
  - exec:
      cd: $home
      cmd:
        - mkdir -p public/forum/discourse
        - cd public/forum/discourse && ln -s ../../uploads && ln -s ../../backups
  - replace:
      global: true
      filename: /etc/nginx/conf.d/discourse.conf
      from: proxy_pass http://discourse;
      to: |
          rewrite ^/(.*)$ /forum/discourse/$1 break;
          proxy_pass http://discourse;
  - replace:
      filename: /etc/nginx/conf.d/discourse.conf
      from: etag off;
      to: |
          etag off;
          location /forum/discourse {
              rewrite ^/forum/discourse/?(.*)$ /$1;
          }
  - replace:
      global: true
      filename: /etc/nginx/conf.d/discourse.conf
      from: $proxy_add_x_forwarded_for
      to: $http_your_original_ip_header
  - exec: echo "Fin de comandos personalizados"

Los recursos de marcadores de posición no cargan la ruta de la subcarpeta, pero tan pronto como completes la configuración del asistente, los nuevos registros agregados incluirán el prefijo de la subcarpeta.

5 Me gusta

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.