2013-09-20 3 views
3

Что касается веб-приложения, используя Common Lisp, Apache и fastcgi, можно сопоставить URL-адреса с нужными функциями, определенными на верхнем уровне, а не писать отдельные файлы сценариев на URL-адреса?Использование Common Lisp Apache fastcgi

Возможно ли использовать оба подхода выше в среде разработки Common Lisp Apache fastcgi? И как, с помощью каких инструментов?

Обязательно использовать сервер, который загружается в реализацию Common Lisp (как описано и упоминается как «простой сервер» в this page presents sb-fastcgi) в среде разработки Common Lisp Apache fastcgi? Или это не является обязательным для среды SBCL Apache sb-fastcgi, и упомянутый «простой сервер» есть еще один способ? Я стараюсь избегать такого сервера, как те, и некоторые другие, которые не поддерживаются и поддерживаются как Apache.

Поддерживает ли fastcgi связь между Interpreter (Common Lisp здесь) и Apache напрямую или через другое серверное программное обеспечение, загруженное на Common Lisp, например, как Hunchentoot или «simpleserver»?

Я хочу иметь оба вышеупомянутых выше подхода и иметь возможность запускать Common Lisp с Apache через fastcgi? Какие инструменты мне нужны в достаточной мере?

+1

Я могу только сказать, что вы * хотите * иметь сервер Lisp, работающий независимо от сервера Apache, иначе вы не сможете использовать его для чего-либо удаленно серьезного из-за очень длительного времени запуска возьмите на себя * каждый * запрос. Это то, что делает 'sb-fastcgi: simple-server'. Я не знаю, есть ли способ использовать 'sb-fastcgi' для привязки запросов к функциям, но вы, вероятно, можете придумать какой-то макрос' defhandler', чтобы сделать это относительно легко самостоятельно. (Вам нужно будет изучить объект запроса и вызвать обработчик из какой-либо таблицы рассылки, которую вы создаете). –

+0

Огромное вам спасибо, у меня возникли трудности с установкой среды обитания для Common Lisp, и у меня возникли трудности с поиском справки или документации в этом и найти это удивительно. Так или иначе. Что касается вашего комментария, я хочу, чтобы lisp-сервер работал независимо от сервера Apache, это то же самое, что и Clisp и его интерфейс FastCGI. в общем, я хочу уточнить в 1. Является ли этот отдельный сервер уже существовавшим в других реализациях fastcgi неявным образом, и это видно только в sb-fastcgi, явно называемом дизайном его API? Является ли общий способ протоколом fastcgi? –

+0

2.about fastcgi обычно написано, что он не загружает скрипт каждый раз, когда выполняется запрос, но поэтому он отличается от cgi, который загружается каждый раз, это не противоречит тому, что вы говорили о временах загрузки выше. –

ответ

2

Я использую Clack для всех веб-разработок в lisp сейчас. С Caveman2 вы будете иметь приятный LISP веб опыт :)

Как веб-документации состояний:

Причина Clack было только несколько ошибок до сих пор много качественных модульных тестов. В настоящее время существует 173 теста. Испытательное покрытие было хранилось более 70% с момента его первого официального выпуска.

Все выпуски прошли тестовый комплект на трех реализациях CL: Clozure CL, SBCL и CLISP. Вы можете проверить текущий статус на http://ci.clacklisp.org/.