Как заставить работать цепочку переадресации в Netlify?

У меня есть _redirects файл в моей структуре каталогов netlify

 /
 - site
 -- _redirects

_redirects

https://example.netlify.com/  https://www.example.com/:splat 301!
https://www.example.com/post/196 https://www.example.com/comic/post-name

Проблема:

Первое перенаправление происходит успешно, но второе возвращает:

Страница не найдена

Я следил за документацией в https://www.netlify.com/docs/redirects/ но не могу найти причину этой проблемы.

Отмечу 2 возможные причины, упомянутые в документации:

Вы также можете добавить правила перенаправления в свой файл netlify.toml.

^^ Я этого не пробовал, но, поскольку там написано «также», я полагаю, что использования _redirects файла должно быть достаточно.

Для Jekyll это требует добавления параметра include в config.yml.)

^^ Насколько мне известно, я не использую Jekyll, но в моем проекте есть файл config.yml.


person Wronski    schedule 21.10.2018    source источник


Ответы (2)


Вы не сможете связать перенаправления на Netlify из того, что читают документы.

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

https://example.netlify.com/post/196 https://www.example.com/comic/post-name
/post/196 /comic/post-name
https://example.netlify.com/*  https://www.example.com/:splat 301!

Вы можете попробовать без первой строки выше, чтобы увидеть, перенаправляет ли https://example.netlify.com/post/196 на https://www.example.com//comic/post-name. Если он не перенаправляет, значит, в перенаправлениях Netlify нет цепочки.

person talves    schedule 21.10.2018
comment
Я попытался переключить эти URL-адреса в соответствии с вашим примером. К сожалению, результат остался прежним. > Страница не найдена - person Wronski; 23.10.2018
comment
Я хотел бы убедиться, что у вас есть /comic/post-name/index.html страница в вашей сборке. - person talves; 23.10.2018
comment
Я не уверен, что требовалось для этой страницы, поэтому не настраивал ее. Тем не менее, я нашел решение (подробно описано ниже). Спасибо за помощь. - person Wronski; 25.10.2018

Решено добавлением:

[[redirects]]
from = "https://www.example.me/post/196"
to = "https://www.example.me/comic/post-name"
status = 200

в netlify.toml

источник решения: https://www.netlify.com/docs/redirects/

person Wronski    schedule 25.10.2018