Portál AbcLinuxu, 8. května 2025 02:40

Dotaz: nginx a try_files v if

13.4.2019 11:12 Peter
nginx a try_files v if
Přečteno: 225×
Odpovědět | Admin
Dobrý deň prajem.

Keďže doména má veľa subdomén, tak mám len jednu server sekciu
server_name ~^(?<sub>.+)\.example\.tld$;
Teraz potrebujem pridať napríklad pravidlo:
location /blob {
  try_files $uri $uri/ /blob/index.php?mode=pull&hash=$request_uri;
}
toto funguje v poriadku, len s tým problémom, že to platí pre všetky subdomény a nadôvažok, už by som nevedel spraviť rôzne pravidlá pre rôzne subdomény na danej lokácii. V apache mi to "rieši" buď .htaccess, alebo <Directory ...>

Ako spraviť v nginx takého niečo?
if ($host = abc.example.tld) {
  location /blob {
    try_files $uri $uri/ /blob/index.php?mode=pull&hash=$request_uri;
  }
}
Vytváraniu zvlásť server sekcií by som sa veľmi rád vyhol - je to vôbec možné takto spraviť?

Za odpovede vopred ďakujem.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

13.4.2019 11:59 NN
Rozbalit Rozbalit vše Re: nginx a try_files v if
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ta promenna skutecne existuje..
if ( $host = "abc.example.com" ) { ... 
13.4.2019 12:06 Peter
Rozbalit Rozbalit vše Re: nginx a try_files v if
Ja viem, že existuje, ale location a ani try_files nemôžu byť v if podmienke - to už som skúšal - teda tadiaľto cesta nevedie, ja som len dal príklad čo potrebujem - možno sa to dá pomocou rewrite, len netuším ako.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.