Keine Präfixierung von Unterordnern für einige Ressourcen.

Version: v2.6.0.beta2
Setup: Subfolder-Setup /forum/discourse läuft unter Docker mit Apache Reverse Proxy auf dem Host unter /forum/discourse

Ich habe die Anweisungen hier für das Subfolder-Setup befolgt, und die Installation funktioniert einwandfrei.

Allerdings sind einige Ressourcen-URLs nicht korrekt mit dem Pfadpräfix versehen und führen zu 404-Fehlern. Beispielsweise sollte die URL für das Standard-Header-Logo /forum/discourse/images/discourse-logo-sketch.png lauten, aber Discourse verwendet /images/discourse-logo-sketch.png.

Ich bin mit der Codebasis nicht besonders vertraut, aber ich denke, dies könnte gelöst werden, indem application_logo_url mit UrlHelper.absolute() umschlossen wird hier.

Ich werde das Thema ergänzen, falls ich weitere Vorkommnisse dieses Problems finde. Lasst mich bitte wissen, ob dies tatsächlich ein Problem ist oder ob ich etwas falsch mache. Ich würde mich sehr freuen, einen PR einzureichen.

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

expose:
# Host hat einen Reverse Proxy auf diesen Ports
  - "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

## Der Docker-Container ist zustandslos; alle Daten werden in /shared gespeichert
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

## Beliebige benutzerdefinierte Befehle, die nach dem Build ausgeführt werden sollen
run:
  - exec: echo "Beginn der benutzerdefinierten Befehle"
## 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 "Ende der benutzerdefinierten Befehle"

Die Platzhalter-Ressourcen laden den Unterordner-Pfad tatsächlich nicht, aber sobald Sie die Wizard-Einrichtung abgeschlossen haben, erhalten die neu hinzugefügten Protokolle das Unterordner-Präfix.

5 „Gefällt mir“

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