У меня есть проблема, которую я не могу объяснить. Я создал URL-адрес следующим образом: domain.com/lang/segment_1/segment_2/segment_3 (сегмент_3 - это «url_title»). Также я использовал комбинацию операторов if, чтобы избежать загрузки несуществующих URL (пример ниже).
{if segment_4}{redirect="404"}{/if}
{if segment_2 != "segment_2"}{redirect="404"}{/if}
{if segment_2 == "segment_2"}
{if segment_4 == ""}
{exp:channel:entries channel="channel_name" require_entry="yes" url_title="{segment_3}" dynamic="no" limit="1" disable="categories|member_data|pagination"}
{if no_results}
{redirect="404"}
{/if}
...
{/exp:channel}
{/if}
{/if}
Все отлично работает. Если я добавлю любой сегмент_4, я получу страницу 404, как и ожидалось. Но ... Если я также добавлю сегмент_5 (и сегмент_6, сегмент_7 позже), то я не получу страницу 404. Вместо того, чтобы браузер пытался загрузить «что-то», я наконец-то получил страницу 504 (из CloudFlare). Интересным фактом является то, что проблема возникает ТОЛЬКО, когда последний сегмент «url_title».
Вопрос: почему я не получаю страницу 404, когда не добавлены несуществующие сегменты? Это действительно раздражает меня, потому что я не знаю, что случилось.
Я использую EE 3.5.16 (строгие URL-адреса включены).
Спасибо за вашу помощь!