1. Куча / Говнокод #27944

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    location ~ ^/(pituh|kurochka) {
        alias "static/pituh.gif";
        default_type image/gif;
    }
    
    curl "http://localhost/pituh" - OK
    curl "http://localhost/pituh123" - OK
    curl "http://localhost/pituh/1/2/3" - OK
    curl "http://localhost/pituh/1/2/3/" - INTERNAL SERVER ERROR: static/pituh.gifindex.html" is not a directory

    Что это, блядь, за багор и как можно исправить?

    Запостил: 3_dar, 11 Января 2022

    Комментарии (2) RSS

    • Что, никто не знает?
      Ответить
    • потому что alias нужен для замены куска location, и на то, что nginx считает твой запрос папкой, и запускает модуль index, это никак ен влияет:

      >alias: Defines a replacement for the specified location.

      В твоем случае лучше реврайтнуть запрос и сделать break

      location ~ ^/(pituh|kurochka) {
              rewrite ^ /static/pituh.gif break;
      }

      при условии, что static конечно доступен по http. Тогда твой запрос тупо реврайтнется, и дальше сработает нормально.

      Кстати, тильда без звезды регистрозависима.

      В нормальном софте конечно была бы внятная схема обрабртки запроса: какая директива полсе чего применяется, но где вы видели нормальный прыщесофт?
      Ответить

    Добавить комментарий