У меня тоже вопрос. А знаете есть такая фича у

nginx, когда ты делаешь запрос на /bla, если в root folder есть папка bla, он возвращает редирект (3xx) - это происходит автоматически без каких либо дополнительных конфигураций.

Чтобы этого не происходило, можно делать внутренее перенаправление для нужных адресов
условно rewrite ^/(bla|bla1|bla2|bla3)$ /$1/ last; - тогда при запросах на эти страницы будут сразу отдаваться index.html в этих папках, без каких либо редиректов для клиента.

Но вот если лень описывать каждый такой uri, можно ли как-то стандартное поведение такого автоматического редиректа изменить с 3xx редиректа на внутренее перенаправление?

16 ответов

10 просмотров

А зачем вообще это делать? С точки зрения SEO /bla и /bla/ - это разные URI и ты по итогу дублируешь контент. Кроме того, если в этом index.html у тебя будут относительные ссылки - они перестанут работать. Почитай, что такое browsing context.

Dmitry-Sergeev 🇺🇦 Автор вопроса
Johann
А зачем вообще это делать? С точки зрения SEO /bla...

Мне пофиг на seo. Относительные не нужны

можно

Dmitry Sergeev 🇺🇦
Мне пофиг на seo. Относительные не нужны

С моей точки зрения ты хочешь странного. Нет, изменить такое поведение какими-то настройками нельзя. Так устроен исходный код: https://t.me/nginx_ru/229332

Johann
С моей точки зрения ты хочешь странного. Нет, изме...

только что проверил - можно чутка магии напустить :)

Dmitry-Sergeev 🇺🇦 Автор вопроса
Johann
С моей точки зрения ты хочешь странного. Нет, изме...

О, пасиб. Исходники на этот счёт не копал

Как по мне это наркомания, такими вещами заниматься )

Dmitry-Sergeev 🇺🇦 Автор вопроса
kiosaku
location / { try_fules $uri /index.html; }

того же самого можно добиться и rewrite'ом Но тут вопрос про то что, как бы сделать это универсально, не указывая каждую директорию, а чтобы для любой директории так было. Как выяснилось так не выйдет

kiosaku
location / { try_fules $uri /index.html; }

Тогда наверное немного не так try_files $uri/index.html $uri $uri/ =404; Так по идее должно сработать.

Dmitry Sergeev 🇺🇦
того же самого можно добиться и rewrite'ом Но тут ...

Можешь попробовать пример выше. Мне кажется будет работать. Хотя с моей точки зрения это концептуально неправильный подход.

Johann
Тогда наверное немного не так try_files $uri/inde...

угу, я $uri/index.html намеренно опустил ... а вот $uri - тут лишнее

Dmitry Sergeev 🇺🇦
того же самого можно добиться и rewrite'ом Но тут ...

А если тебе вообще не надо, чтобы работали ссылки вида /bla/, а только вида /bla, тогда ещё короче: try_files $uri/index.html $uri =404; Но это всё будет работать только если это статика. С index.php такой номер не прокатит.

kiosaku
угу, я $uri/index.html намеренно опустил ... а вот...

Почему это? Без него ни один файл кроме index.html не загрузится.

очепятка: не $uri, а $uri/

kiosaku
очепятка: не $uri, а $uri/

А, да, точно. $uri/ получается лишнее в любом случае, согласен.

Похожие вопросы

Обсуждают сегодня

Это везде так работает, или еще колдовать нужно?)
Квадрат Гипотенузы
6
Всем привет! Есть камеры для наблюдения с встроенной видеоаналитикой (детектор лиц, например). Как я понял, все вычисления и анализ происходят на самом железе камеры, и пр...
Артур 🌞 Сапрыкин
1
Хмм... А на чем вы деплоите YOLO модели? Есть у кого-то опыт с ONNX (RT)?
Georgy Makarov
3
Всем привет. На руках есть видеопоток с камеры микроскопа, который показывает клетки. (Фото 1). Пытаюсь обвести их квадратами и пронумеровать на картинке. Пока получается...
Semyon
10
Всём доброго времени суток, хотел бы узнать, очень понравилось направление ML и в частности к компьютерному зрению (диплом по распознаванию болячек на растениях) , хотел бы по...
Il'ya King
12
@Miro_Mx ffmpeg в списке устройств ее не видит, там только обычная камера и виртуальная от obs. может я что-то не так делаю? ffmpeg -list_devices true -f dshow -i dummy
Arkadiy
3
Hello everyone, ребят, к какому уровню сложности может относиться задачка по отделению облаков от неба для видео? (от 1 до 10,) *в условиях смены времени суток *при неизменно...
Merge
16
I am reaching out on behalf of my brother, who is currently seeking a data science internship opportunity. He is passionate about data science and has been actively honing his...
Shivam Kumar
3
всем привет, есть видео футбольных матчей и необходимо определить какое действие происходит на видео в определённый момент времени. Условно, на 5 секунде игрок сделал пас, на ...
Vadzim _B
1
Здравствуйте! Во время решение задачи возникла следующая проблема: При распознавании металлических болтов и гаек, появляется проблема обнаружения из-за бликов на металлическ...
Aртем Косарев
4
Карта сайта