Am configurat delegarea pe un server sinapsă. Urmăresc documentele oficiale și par să am totul la locul lor. Primesc următoarea eroare în jurnalele example.com nginx când introduc serverul de acasă „example.org” într-un client, care ar trebui să delege traficul clientului către „synapse.example.com”:
[eroare] 28804#28804: *246 open() „/usr/share/nginx/html/_matrix/client/r0/login” a eșuat (2: Nu există un astfel de fișier sau director) [..]
Clientul pare să solicite informațiile serverului de matrice de la serverul greșit, în loc de cel delegat.
config nginx pe example.com:
Server {
server_name www.example.com example.com; # gestionat de Certbot
locație /.cunoscut/matrice/server {
tip_implicit aplicație/json;
returnează 200 '{"m.server": "synapse.example.com:443"}';
}
locație /.cunoscut/matrice/client {
tip_implicit aplicație/json;
returnează 200 '{"m.homeserver":{"base_url": "https://synapse.example.com"}}';
}
asculta [::]:443 ssl ipv6only=on; # gestionat de Certbot
asculta 443 ssl; # gestionat de Certbot
[...certificații ssl...]
}
Server {
dacă ($gazdă = www.example.com) {
returnează 301 https://$host$request_uri;
} # gestionat de Certbot
dacă ($gazdă = exemplu.com) {
returnează 301 https://$host$request_uri;
} # gestionat de Certbot
asculta 80 ;
asculta [::]:80 ;
server_name www.example.com example.com;
întoarce 404; # gestionat de Certbot
}
synapse.example.com config nginx:
Server {
asculta 443 ssl http2;
asculta [::]:443 ssl http2;
# Pentru portul de federație
asculta 8448 ssl http2 default_server;
asculta [::]:8448 ssl http2 default_server;
nume_server synapse.example.com;
locație ~ ^(/_matrix|/_synapse/client) {
[...]
proxy_pass http://localhost:8008;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $schema;
proxy_set_header Gazdă $gazdă;
[...]
}
}
Și, în sfârșit, homeserver.yaml de pe synapse.example.com:
[...]
public_baseurl: https://synapse.example.com/
prezenţă:
ascultători:
- port: 8008
tls: fals
tip: http
x_forwarded: adevărat
bind_addresses: ['::1', '127.0.0.1']
resurse:
- nume: [client, federație]
compresă: fals
[...]
Înțeleg că eroarea de pe example.com implică faptul că anumite solicitări nu sunt redirecționate către gazda delegată la synapse.example.com, dar nu am putut găsi nimic în documentele synapse sau în altă parte. M-aș fi așteptat ca clienții/protocolul matricei să analizeze binecunoscutul JSON și apoi să se ocupe de delegarea în sine. Aparent nu.
Poate cineva să mă îndrume în direcția corectă cum să depanez aici? Sau chiar da o explicație despre ceea ce fac greșit. Ajutor foarte apreciat
Editați | ×:
Deschidere https://synapse.example.com/_matrix/key/v2/server într-un browser, json conține perechea cheie/valoare
nume_server „example.com”
Nu sunt sigur unde este definit acest lucru și dacă este corect.
(BTW, toate referințele la „synapse.example.com” și, respectiv, „example.com” reprezintă numele de domenii reale.)