mod_lisp moduł Apache jest moduł do łatwego pisania aplikacji internetowych w Lisp.
mod_lisp Dyskusja z Apache lisp procesy autorem gniazd z bardzo prostego protokołu do obsługi żądania. Teraz ponownie wykorzystuje Apache Lisp gniazd w celu zwiększenia wydajności. Przyszłe wersje będą prawdopodobnie bardziej Lisp specyficzne, ale teraz może być używany przez żaden inny język.
Dlaczego mod_lisp?
ย ท Lisp serwery są serwery aplikacji. Nie chcę, aby niepokoić Lisp aplikacji z rzeczy jak obsługujących formacie GIF lub JPEG nawet pliki lub strony statyczne w niektórych przypadkach. Korzystanie mod_lisp mogę oddzielić serwerów HTTP z serwerów aplikacji.
ย ท architektura jestem promowanie jest tak: Jedna lub więcej Apache przodu kończy służyć zawartość statyczną (jak obrazy), jeden lub więcej serwerów aplikacji Lisp przetwarzanie logiki aplikacji i serwerów baz danych do przechowywania danych.
ย ท Czas jest najbardziej brakuje zasobów, więc nie chcę marnować go wdrożyć takie rzeczy jak SSL, prowadzenie na bieżąco z protokołami HTTP Apache itd. Ludzie to zrobić w odpowiedniej jakości, nie widzę żadnego interesu, aby zrobić to ja.
ย ท mogę korzystać z modułów Apache czy muszę je (mod_gzip na przykład)
ย ท akceptacja rynku jest dość lepiej. To naprawdę łatwiej sprzedać FreeBSD + Apache + (PostgreSQL lub Oracle) + rozwiązanie niż Lisp Lisp + FreeBSD + (PostgreSQL lub Oracle) roztworu. W pierwszym przypadku Lisp jest postrzegany jako kolejny języku internetowej jak Perl, Python i innych. W drugim przypadku trzeba zaleca stosowanie Lisp.
ย ท mod_lisp jest udostępniany na licencji stylu FreeBSD.
ย ท Łatwiej jest pracować nad projektem, gdzie jest aplikacja internetowa Lisp tylko część strony internetowej.
Wymagania:
ย ท Apache 1.3 / 2.x
Kompilacja mod_lisp
wpisz: apxs -i -c mod_lisp.cthis będzie skompilować i zainstalować go.
Konfiguracja Apache mod_lisp
W pliku konfiguracyjnym Apache (httpd.conf lub apache.conf):
Po pierwsze, należy dodać moduł mod_lisp (zmienić ścieżkę do których zostały wprowadzone mod_lisp):
LoadModule lisp_module libexec / apache / mod_lisp.so (na Uniksach i podobne)
LoadModule lisp_module moduły / mod_lisp.dll (dla Win32)
Następnie dodać dyrektywę LispServer (LispServer adres IP-of-lisp-komputer-port ip-of-lisp-nazwa-procesu zdefiniowane przez użytkownika):
adres-ip-of-lisp-komputer jest adres IP komputera, na którym proces Lisp jest.
Ip-Port-of-lisp-procesu jest port IP komputera, na którym proces Lisp jest.
nazwa zdefiniowana przez użytkownika jest ciąg znaków, który zostanie przekazany z Apache do procesu Lisp. Jest to przydatne, gdy masz kilka serwerów wirtualnych lub katalogów, zdefiniowane w serwerze Apache, które mają być przetwarzane przez mod_lisp.
Przykład: LispServer 127.0.0.1 3000 "Fraktal"
Na koniec dodać dyrektywę SetHanlder:
SetHandler LISP-handler
Wszystko znajduje się w / url asp (jak /asp/index.html) zostanie wysłany do mod_lisp
Twój httpd.conf powinno być tak:
...
LoadModule lisp_module libexec / apache / mod_lisp.so
...
ClearModuleList
...
AddModule mod_lisp.c
...
LispServer 127.0.0.1 3000 "Fraktal"
...
SetHandler LISP-handler
...
jeśli używasz mod_ssl należy umieścić to w swoich dyrektywach SSL:
SSLOptions + StdEnvVars
mieć ssl-session-id wysłana do procesu Lisp
Ponownie uruchomić Apache i powinno być OK.
Co nowego w tym wydaniu:
ย ท wrócił zmienne LispSocket i UnsafeLispSocket jak zmiennych zamiast zmiennych globalnych struct config.
ย ท struktura jest zresetować na każdy nowy wniosek tak gniazda zostały utracone, zamiast ponownie wykorzystane. (Znalezione i naprawione przez Edi Weitz)
Szczegóły programowe:
Komentarze nie znaleziono