Puncte:0

nginx alis funcționează, dar nu returnează tipul mime corect

drapel us

Am configurat o regulă nginx

    locație ~ /(sitemap.*) {
      alias /var/www/html/sitemaps/$1;
    }

Acest lucru funcționează bine pentru cazurile pe care vreau ca exemplu

  1. https://example.com/sitemap-1.xml
  2. returnează fișierul /var/www/html/sitemaps/sitemap-1.xml

Problema mea este că tipul de conținut din anteturile de răspuns este tip de conținut: text/plat și nu este corect pentru fișierul xml

Vreo modalitate prin care nginx să înțeleagă automat tipul de conținut și să returneze antetul adecvat?

Richard Smith avatar
drapel jp
Majoritatea configurațiilor Nginx folosesc `include mime.types;` pentru a potrivi extensiile de fișiere cu un tip MIME. Acest lucru trebuie să fie în domeniul de aplicare (adică într-un bloc părinte al acestui bloc „locație”). Utilizați `nginx -T` (`T` majuscule) pentru a vizualiza întreaga configurație în toate fișierele incluse și verificați dacă tipurile MIME sunt încărcate și sunt în domeniu.
drapel us
Mulțumesc, am verificat și nu există nicio potrivire pentru căutarea `mime` în nginx.conf-ul meu. Pot folosi `include mime.types;` în blocul meu de locație `location ~ /(sitemap.*) { sau` TREBUIE să fie la nivel de părinte. Vreau să folosesc directive numai atunci când este necesar pentru a evita alte lucruri care pot să se comporte greșit/să se rupă
drapel us
Deci întrebarea mea este că poate fi vreo problemă de performanță sau problemă cu alte locații dacă activez mime.types la nivel de server? Vreau ca tipurile de mime să fie folosite numai pentru sitemapurile de locații pe care le-am postat aici, toate celelalte locații (care sunt multe) funcționează bine și nu doresc niciun impact asupra performanței sau de alt tip acolo
drapel us
Am adăugat `include mime.types;` imediat după `http {` așa cum ați sugerat și după ce repornirea nginx funcționează bine. Sunt încă curios să aflu întrebările de mai sus dacă pot afecta altceva. Mulțumiri
Richard Smith avatar
drapel jp
Fișierul `mime.types` conține pur și simplu o [`directivă`types`](http://nginx.org/en/docs/http/ngx_http_core_module.html#types) și poate fi inserat în `http`, `server` sau bloc `locație`. Este obișnuit să plasați directivele comune cât mai sus posibil pentru a evita dublarea, dar cu siguranță nu este obligatoriu și includerea lor într-o singură „locație” este perfect valabilă.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.