Мой сайт CFWheels работает в подпапке/ в корневом каталоге веб-сайта, и у меня есть файл web.config на том же уровне, что и подпапка/. В моем web.config у меня есть необходимое правило перезаписи URL-адреса для удаления подпапки/index.cfm/ из URL-адреса.
Моя проблема возникает, когда я пытаюсь включить файл Javascript из папки javascripts по умолчанию, используя
javaScriptIncludeTag("script.js")
По умолчанию cfwheels ищет JS-файл в /subfolder/javascripts/. Однако я удалил подпапку/ из URL-адреса, поэтому запрос к /subfolder/javascripts/script.js завершается со следующим сообщением об ошибке:
Wheels.ViewNotFound
Не удалось найти страницу просмотра для действия javascripts в контроллере подпапок.
Подделка. javascripts и подпапка - это не действие, а контроллер.
Я считаю, что запрос /javscripts/script.js будет успешным. Как мне указать cfwheels не искать папку javascripts/ в подпапке/?
Мне не удалось найти ответ в документации, и я также не получил никакого ответа в группе Google CFWheels. Я ищу ответ подобно этому, но только для CFWheels.
редактировать
IIS 7 переписать web.config:
<rule name="Remove subfolder/index.cfm">
<match url="(.*)" />
<action type="Rewrite" url="/subfolder/index.cfm/{R:0}" />
</rule>
Моя проблема может быть здесь, если это правило неверно, я не уверен.
linkTo() на самом деле также ссылается на неверный путь.
linkTo(text="Say Hello", controller="say", action="hello")
выходы
<a href="http://mysite.com/subfolder/index.cfm/say/hello">Say Hello</a>