Другой режим перезаписи для корня сайта CFWheels - PullRequest
2 голосов
/ 11 июня 2011

Мне нужен совет по исследованию следующей проблемы.

На веб-сайте Wheels настроено set(URLRewriting="On"), все выглядит нормально, кроме корневой страницы.

Все ссылки, созданные с linkTo, выглядят как website.tld/controller/action.

Но на /режим «переключился» на частичный и ссылки выглядят как website.tld/index.cfm/controller/action.Интересно, что если к странице маршрута по умолчанию обращались явно (в данном случае / pages / index) - URL-адреса построены правильно.

Сайт работает в Tomcat с Apache2 под Ubuntu, стандартные правила перезаписи Wheels настраиваются непосредственно в конфигурации vhost,В качестве обходного пути к известной проблеме с .htaccess.

С чего начать?Какие переменные нужно проверить и как это отладить?

Спасибо.

UPD На данный момент я вижу только то, что при прямом доступе к действию по умолчанию нет Route: home вотладочный вывод.Не уверен, как использовать эту информацию, у меня очень маленький опыт работы с колесами.

Ответы [ 2 ]

2 голосов
/ 13 июня 2011

Поскольку Крис Питерс не создал ответ, я сделаю это вместо того, чтобы отметить разрешенный вопрос.Вся слава Крису, в любом случае.

Обычно Wheels игнорирует set (urlRewriting = "On"), если вы не переписываете в rewrite.cfm.Убедитесь, что запросы маршрутизируются через rewrite.cfm, а не index.cfm

Это означает, что вам нужно проверить область действия CGI на проблемных страницах и исправить правила обхода переписывания(я думаю, что их мало для Tomcat + CFWheels).

2 голосов
/ 11 июня 2011

У меня очень похожая настройка, и я столкнулся с той же проблемой только сейчас. В качестве временного решения я обнаружил, что, изменив строку 294 колеса / global / public.cfm с

loc.returnValue = application.wheels.webPath & ListLast(request.cgi.script_name, "/");

до

loc.returnValue = application.wheels.webPath;

тот linkTo () создал путь, который работал с перезаписью URL. Я буду пинговать некоторых друзей, более знакомых с Колесами, чтобы узнать, нужен ли патч, чтобы это исправить.

...