Скрыть среднюю часть URL-адреса с помощью HTACCESS без получения ошибки 404

#.htaccess

Вопрос:

У меня есть URL-адрес, такой как: https://xyz.in/download/12123/i-love-you.html и я хочу, чтобы это отображалось в браузере как https://xyz.in/i-love-you.html. Когда я использую правило .htaccess «Перезаписать ^загрузить/(.)/(.). html$ /$2? [L, R=301]» это дает URL, который я хочу, но он дает страницу 404, так как «/12123/» часть URL-адреса-это имя идентификатора, которое использовалось в строке MySQL. Как скрыть/замаскировать URL-адрес для браузера, все еще позволяя бэкенду использовать полный URL-адрес?

Комментарии:

1. Является /12323/ ли часть внутреннего URL-адреса статичной? Чтобы вы могли реализовать его в своем наборе правил? Если это так, вам просто нужно добавить второе внутреннее правило перезаписи, которое снова сопоставляет входящие запросы с сокращенным URL-адресом с фактическим длинным URL-адресом. Если эта часть не динамична, а изменяется, то вопрос в том, где правила перезаписи должны знать, какой внутренний путь использовать …