Я думаю, что название объясняет все это. Дело в том, что мое приложение основано на Zend Framework и включает в себя несколько контроллеров. Основные контроллеры:
Companies/
People/
Countries/
Первоначально URL профилей страны мог быть доступен через URL, например:
example.com/countries/view/id/Korea
Я замкнул его, добавив роутер к
example.com/countries/Korea
Однако клиент требует дальнейшего сокращения до:
example.com/Korea
Вывод названия страны, которая в данном случае является параметром url, вместо контроллера. Кроме того, клиенты требуют, чтобы все URL-адреса были сокращены аналогичным образом, а затем URL-адрес для компании, которая раньше читала что-то вроде:
example.com/companies/acme-corporation-1234
, где 1234 - это идентификатор компании, которая читает что-то в строках:
example.com/acme-corporation-company
Я могу понять уникальность названий стран, поскольку нет двух стран с похожими названиями, однако я сомневаюсь, что смогу добиться того же для компаний, поскольку у вас может быть несколько компаний с похожими названиями. Я проверил Gogobot.com и заметил, что все URL-адреса на сайте действительно легко читаются и даже не содержат ни одного идентификатора.
Есть ли какие-либо идеи о том, как это можно сделать, т. Е. Еще более сократить - так, чтобы example.com/korea означал не Корею как контроллер, а ссылку на example.com/countries/korea и аналогичный пример URL. com / стран по-прежнему следует интерпретировать как вызов контроллера стран.