LINUX.ORG.RU
ФорумAdmin

Странности nginx

 ,


0

1

С таким конфигом сервер выдает всегда 404, когда запрос по http идет. Если https использутся то норм

location / {

  if ($scheme = "http") {

  }

  try_files $uri $uri/ @php;
}


С этим конфигом нормально
location / {
  try_files $uri $uri/ @php;
}


Т.е. если if(true) то выдает 404. В IF можно подставлять любую проверку, главное чтобы было TRUE, даже если $uri = «/» будет, то сервер опять же выдает 404. Ничего не понимаю, почему он не доходит до try_files, а попадает в IF(){} и там как я понял затыкается

★★★★

if в nginx работает через жопу (гугли if is evil). В данном случае подозреваю что проблема в отсутствии в блоке if try_files, видимо оно не наследуется из вышележащего блока

MrClon ★★★★★
()

я может туплю с утра, но вот это не должно работать

  if ($scheme = "http") {
  }
  try_files $uri $uri/ @php;
}

а это должно

  if ($scheme = "http") {
  try_files $uri $uri/ @php;
  }
}
SevikL ★★★★★
()
Ответ на: комментарий от deep-purple

Хочу тупо редиректить на https, если файл не существует физически и если URL НЕ /auth

if ($scheme = "http") {
   set $https_redirect  "redir";
}


if ($uri = "/auth") {
   set $https_redirect  "xuy";
}

if (-e $request_filename){
   set $https_redirect  "xuy";
}

if ($https_redirect = "redir") {
   rewrite ^ https://$host$uri permanent;
}
try_files $uri $uri/ @php;

gobot ★★★★
() автор топика
Ответ на: комментарий от gobot

Не стоит пытаться делать такое через if. if в nginx это не не тот няшный if к которому ты привык, if в nginx это хтоническое нечто. Попробуй приспособить к этому map

P.S. а чего бы не редиректить на https вообще всё?

MrClon ★★★★★
()
Ответ на: комментарий от MrClon

А конфиг домена дублировать со всеми потрохами? Вот был б в нгикс наследование или шаблоны виртхостов другое дело. А вообще там у меня пару урл, которые должны быть доступны по http

gobot ★★★★
() автор топика
Ответ на: комментарий от gobot

зачем дублировать? сделай именованый локейшн, его и возвращай по условию

deep-purple ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.