> 1 <

Автор Сообщение

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7118   2013-08-21 17:46 GMT+3 часа(ов)      
Здравствуйте!

Граждане, если кто-нибудь использовал в своей практике PLT Web Server, подскажите пожалуйста, как его завести? Также интересует, как сделать несколько виртуальных хостов на нём? Всё это в документации отражено поверхностно и неочевидно. Пример же с serve/servlet слишком прост, и, если я правильно понял, не поддерживает multiple hosts.

Спасибо!

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7121   2013-08-25 13:55 GMT+3 часа(ов)      
Странно, лет 5 назад у меня никаких проблем с документацией не возникло. Тогда там не было никаких виртуальных хостов. Если вам это нужно для дела, тогда я помогу, но чуть позже. Хотя я думаю, вы и сами уже разобрались.
Кстати, читали Continue: Web Applications in Racket?

отредактировал(а) misha: 2013-08-25 14:08 GMT+3 часа(ов)

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7122   2013-08-25 18:19 GMT+3 часа(ов)      
Указанный раздел читал. Там описан пример одного "хоста". Также, есть упоминание в документации: 2.10 Virtual Hosts. Но что-то мне это не показалось информативным. Видимо, надо знать теорию по web-серверам, в частности, по диспетчерам.

Делаю приложение с web-интерфейсом для одной фирмы. В принципе, можно обойтись и без хостов, но что-то захотелось на отдельный адрес повесить компактный web-интерфейс для планшетов.

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7125   2013-09-02 13:34 GMT+3 часа(ов)      
Цитата
Также, есть упоминание в документации: 2.10 Virtual Hosts.
Эта документация не к plt-web-server, а к библиотеке на которой он основан.
Цитата
Видимо, надо знать теорию по web-серверам, в частности, по диспетчерам.
Необходимо хорошо знать устройство рэкетовского сервера, а иначе ничего путного вам создать не удастся. Кстати, документация довольно скудная, поэтому вам придется пополнять ваши знания из исходников.
Цитата
но что-то захотелось на отдельный адрес повесить компактный web-интерфейс для планшетов.
Обычно никто так жестко не эксплуатирует системные ресурсы.

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7137   2013-09-28 21:19 GMT+3 часа(ов)      
Эта тема еще актуальна?

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7140   2013-10-04 09:23 GMT+3 часа(ов)      
Да. только пока пришлось отложить этот вопрос в связи с делами по основной работе.

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7187   2013-11-18 14:25 GMT+3 часа(ов)      
В результате экспериментов выяснил следующее:

1 Как работать с plt-web-server, я так и не понял. Но это и не особо важно, т.к. ничто не ограничивает написать свой сервер. Даже короче получится. Весь API хорошо документирован.
2 Что касается multiple hosts, то проблема легко решается с помощью URL-Based Dispatch

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7190   2013-11-18 19:24 GMT+3 часа(ов)      
Цитата
1 Как работать с plt-web-server, я так и не понял.
Вам написать "Hello, world!"?
Цитата
2 Что касается multiple hosts, то проблема легко решается с помощью URL-Based Dispatch
Нет, проблема остается. Но вы на правильном пути. Когда разберетесь с библиотекой Web Server, тогда вы поймете, как прикрутить виртуальные хосты. Это вроде как несложно(судя по документации).
Кстати, URL-Based Dispatch позволит вам установить обработчики на свои собственные маршруты, что упростит вам в будущем реорганизацию вашего веб-приложения.

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7191   2013-11-19 22:25 GMT+3 часа(ов)      
misha
Вам написать "Hello, world!"?

Был бы очень признателен. Почему-то кажется, что в некоторых ситуациях это может быть удобно - использовать сервер.

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7192   2013-11-21 01:26 GMT+3 часа(ов)      

    1) Скопируйте папку "racket/collects/web-server/default-web-root" в "куда-нибудь".
    2) Создайте папки для виртуального хоста "куда-нибудь/default-web-root/test/htdocs" и "куда-нибудь/default-web-root/test/servlets".
    3) Добавьте в конфиг настройки виртуального хоста "куда-нибудь/default-web-root/configuration-table.rkt"
    (virtual-host-table
    ("test" (host-table
    (paths
    (host-root ".")
    (log-file-path "test-log")
    (file-root "test/htdocs")
    (servlet-root "../servlets")))))

    4) Создайте файл "куда-нибудь/default-web-root/test/servlets/hello.rkt", добавьте в него код
    #lang web-server
     
    (provide interface-version
    start)
     
    (define interface-version 'stateless)
     
    (define (start req)
    (response/xexpr `(html (head (title "Hello, world!")
    (meta ((http-equiv "content-type")
    (content "text/html; charset=UTF-8"))))
    (body (h1 "(Just another Racket hacker)")))))

    5) Запустите сервер # plt-web-server -f куда-нибудь/default-web-root/configuration-table.rkt
    6) Откройте в браузере ссылку http://test.localhost/hello.rkt
    7) Экспериментируйте

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7193   2013-11-24 17:43 GMT+3 часа(ов)      
Что-то у меня не работает
Браузер говорит, что адрес неверный

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7195   2013-11-24 19:30 GMT+3 часа(ов)      
А вы создали хост test.localhost? А то я пропустил этот пункт.

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7196   2013-11-25 15:12 GMT+3 часа(ов)      
Неа. А как?

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7197   2013-11-26 21:45 GMT+3 часа(ов)      
Добавьте test.localhost в файл hosts.

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7198   2013-11-27 14:21 GMT+3 часа(ов)      
А host-table при этом оформить, как и у "test"?

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7199   2013-11-28 00:07 GMT+3 часа(ов)      
Я не понял сути вопроса. Если вы правильно настроили перенаправление, то все должно сразу заработать.

отредактировал(а) misha: 2013-11-28 23:50 GMT+3 часа(ов)

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7201   2013-12-04 21:06 GMT+3 часа(ов)      
Выкроил немного времени и начинаю потихоньку разбираться. С несколькими хостами что-то не получается, зато теперь понятно, как работать с единственным хостом, чего в принципе хватает. Не нравится только, что для работы сервлета нужно задавать его полное название, включая расширение, например add.rkt

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7204   2013-12-16 15:11 GMT+3 часа(ов)      
Цитата
С несколькими хостами что-то не получается
Покажите ваши конфиги: configuration-table.rkt, hosts. А также укажите полные пути к файлам.
Цитата
Не нравится только, что для работы сервлета нужно задавать его полное название, включая расширение, например add.rkt
Можно работать через apache, т.е. пускай apache перенаправляет запросы.

rv82

Members


Статус

46 сообщений
http://rv82.ya.ru
Где: Russia
Род занятий:
Возраст:

#7208   2013-12-22 23:47 GMT+3 часа(ов)      
Misha, спасибо Вам за консультации. Многое стало понятно. А под hosts понимается /etc/hosts? Если да, то теперь мне ясно, почему не работал хост test.localhost.

К сожалению (или к счастью? ), в данный момент я работаю над проектом для одной небольшой фирмы. С web-интерфейсом. Конечно же на Racket'е. Думаю пока не использовать plt web server, а всю логику описать в одном приложении, которое в дальнейшем оформить в виде исполняемого файла, возможно, с подгрузкой библиотек. Использую для этого URL-Based Dispatch. Надеюсь, потянет

misha

Moderators


Статус

1273 сообщений
http://racket-lang.org/
Где: Yemen
Род занятий:
Возраст:

#7210   2013-12-25 16:09 GMT+3 часа(ов)      
Цитата
А под hosts понимается /etc/hosts?
Его конечно же. А для работы в сети придется настроить dns.
> 1 <


Онлайн :

0 пользователь(ей), 13 гость(ей) :




Реклама на сайте: