обслуживание статических файлов с помощью comanche

Я использовал этот код для обслуживания статических файлов с веб-сервера Comanche из образа Pharo 1.2:

createService
| contentPath dirPath  svc ma |

    contentPath := 'htdocs'.
    dirPath := FileDirectory default fullNameFor: contentPath.
    svc := (HttpService on: self port)
        name: 'seaside-' , self port greaseString.
    ma := ModuleAssembly core.
    ma alias: '/static' to: [
        ma serverRoot: dirPath.
        ma documentRoot: dirPath.
        ma directoryIndex: 'index.html index.htm'.
        ma serveFiles ].
    ma addPlug: self.
    svc plug: ma rootModule.
    ^ svc

Код из http://samadhiweb.com/blog/2011.07.10.seaside.comanche.staticfiles.html

К сожалению, это больше не работает на Pharo 1.3. Класс ModuleAssembly больше не существует. Итак, как мне настроить comanche для обслуживания статических файлов?


person milan    schedule 15.09.2011    source источник


Ответы (2)


Убедитесь, что у вас загружена полная версия Komanche. Подготовленные образы Seaside используют KomHttpServerLight, который содержит лишь минимальную функциональность веб-сервера, требуемую Seaside. Чтобы получить полное, вам нужно загрузить DynamicBindings, KomServices, KomHttpServer и, возможно, другие зависимости.

person Lukas Renggli    schedule 15.09.2011

Если вы используете Seaside в этом образе, другим вариантом является загрузка пакета Seaside-Filesystem из репозитория Seaside30LGPL. . Затем вы можете настроить обработчик «внешнего каталога», который обслуживает файлы с диска.

Мы используем это только для разработки, поэтому я не знаю о его производительности при развертывании.

person Johan B    schedule 16.09.2011