27 октября 2011

Pylons + Routes фикс слэша в конце URL

Если мапить URL'ы вот так:
map.connect('/logs', controller='logs', action='logs')
То при попытке открыть URL /logs/ вместо /logs появится страница 404

Можно конечно делать так:
map.connect('/logs/', controller='logs', action='logs')
map.connect('/logs', controller='logs', action='logs')
Но это жутко неудобно.

По совету stackoverflow можно обойти эту проблему простым редиректом:
map.redirect('/*(url)/', '/{url}',
             _redirect_code='301 Moved Permanently')
Теперь все запросы оканчивающиеся на слэш будут перенаправляться на адрес без слэша.

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

Отправить комментарий