Compose und nginx-Konfiguration, genau so durchprobiert. Dazu der Hinweis, dass der Ursprung in HoneyOS auf den Buchstaben passen muss: localhost und 127.0.0.1 sind fuer den Browser zwei verschiedene. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
35 lines
1.6 KiB
Plaintext
35 lines
1.6 KiB
Plaintext
# Setzt die HoneyOS-Leiste in eine fremde App ein, die man nicht ändern kann.
|
|
#
|
|
# Angepasst werden müssen genau zwei Dinge: die Adresse von HoneyOS und
|
|
# data-app (der Name muss der id der App in HoneyOS entsprechen, sonst weiss
|
|
# die Leiste nicht, wo man gerade ist).
|
|
server {
|
|
listen 80;
|
|
|
|
location / {
|
|
proxy_pass http://bentopdf:8080;
|
|
proxy_set_header Host $host;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_http_version 1.1;
|
|
|
|
# Unkomprimiert anfordern — in einem gzip-Strom ist nichts zu ersetzen.
|
|
# Das betrifft nur die Strecke Einsetzer→App; nach draussen komprimiert
|
|
# Pangolin weiterhin.
|
|
proxy_set_header Accept-Encoding "";
|
|
|
|
# Nur HTML anfassen. Bilder, JSON und Downloads gehen unberührt durch.
|
|
sub_filter_types text/html;
|
|
sub_filter_once on;
|
|
sub_filter '</head>'
|
|
'<script defer src="https://honeyos.duckdns.org/honeybar/honeybar.js" data-app="bentopdf"></script></head>';
|
|
|
|
# Falls die App eine eigene CSP schickt (BentoPDF tut es nicht), muss
|
|
# sie ersetzt werden — zwei CSP-Kopfzeilen heissen nicht „mehr erlaubt",
|
|
# sondern „beide müssen zustimmen". Dann diese zwei Zeilen einschalten:
|
|
#
|
|
# proxy_hide_header Content-Security-Policy;
|
|
# add_header Content-Security-Policy "default-src 'self'; script-src 'self' https://honeyos.duckdns.org; connect-src 'self' https://honeyos.duckdns.org; style-src 'self' 'unsafe-inline'; img-src 'self' data: blob:" always;
|
|
}
|
|
}
|