Структура URI моего веб-сайта недавно резко изменилась, и мне нужно перенаправить все старые страницы на соответствующие им новые страницы. У меня есть точечный список пар всех старых и новых URI. На данный момент я пытаюсь определить простые обработчики для каждого в цикле:
(let ((redirects '(("/old/uri/example-1" . "/new/uri/example-1"))))
(dolist (redirect redirects)
(hunchentoot:define-easy-handler (???? :uri (first redirect)) ()
(redirect (rest redirect)))
))
Может быть, есть лучший способ. Предполагая, что define-easy-handler верен, для каждого простого обработчика требуется функциональный символ. Я пробовал следующее безрезультатно:
- Размещение (gensym) там, где ожидается функциональный символ
- Использование списков, а не точечных списков и вызов (первое перенаправление) там, где ожидается символ
- Размещение квазикавычек вокруг всего этого и отсутствие кавычек вокруг (первое перенаправление)
Что было бы хорошим способом сделать это?