Вам необходимо обеспечить две вещи:
- ваше приложение правильно распечатывает новые URL, а
- ваш веб-сервер может понимать, что новые URL-адреса и перезаписывают их в вашу внутреннюю схему, или перенаправляет их обратно в ваше приложение, а ваше приложение делает все остальное.
Первая часть может быть просто выполнена с помощью
echo '<a href="/index/page-1/title-articles"> … </a>';
вместо
echo '<a href="/index.php?page=1&title=articles"> … </a>';
Вторая часть может быть выполнена с помощью функций отображения URl вашего веб-сервера (большинство веб-серверов имеют такой модуль, как mod_rewrite Apache ). С mod_rewrite следующее будет делать перезапись:
RewriteEngine on
RewriteRule ^index/([^/-]+)-([^/]+)(.*) /index$3?$1=$2 [N,QSA]
RewriteRule ^index$ index.php [L]
Первое правило будет извлекать по одному параметру за раз и добавлять его в запрос. Второе правило, наконец, перезапишет оставшийся /index
URL-путь к /index.php
.