Настройка Yapp - PullRequest
       40

Настройка Yapp

1 голос
/ 11 июля 2011

Я пытаюсь следовать введению yapp и испытываю некоторые основные трудности.

Предварительные сведения: версия yaws - 1.9, yapp установлен (с документами). Yaws и Yapp установлены вручную, Erlang установлен с помощью Homebrew на MacOS X 10.6.

Erlang R14B03 (erts-5.8.4) [source] [64-bit] [smp: 8: 8] [rq: 8] [async-threads: 0] [hipe] [kernel-poll: true]

Конфигурация - это именно то, что мы видим во введении yapp:

<server localhost>
    port = 8000
    listen = 0.0.0.0
    docroot = /usr/local/var/yaws/www
    arg_rewrite_mod = yapp
    <opaque>
       yapp_server_id = edo
    </opaque>
</server>

<server localhost>
    port = 8001
    listen = 0.0.0.0
    docroot = /usr/local/var/yaws/www
    arg_rewrite_mod = yapp
    <opaque>
        yapp_server_id = ido
        bootstrap_yapps = yapp
    </opaque>
</server>

У меня также есть следующее в составе установки (до блокировки сервера):

ebin_dir = /usr/local/lib/yaws/examples/ebin
ebin_dir = /usr/local/var/yaws/ebin
ebin_dir = /usr/local/lib/yapp/ebin

...

runmod = yapp

Mnesia настроена в соответствии с указаниями на вступлении yapp, и yaws запускается с правильным именем узла, генерируя следующий вывод:

Eshell V5.8.4  (abort with ^G)
(dclements@server)1> 
=INFO REPORT==== 11-Jul-2011::13:10:58 ===
Yaws: Using config file /usr/local/etc/yaws/yaws.conf

=INFO REPORT==== 11-Jul-2011::13:10:58 ===
Ctlfile : /Users/dclements/.yaws/yaws/default/CTL

=INFO REPORT==== 11-Jul-2011::13:10:58 ===
Yaws: Listening to 0.0.0.0:8001 for <1> virtual servers:
 - http://localhost:8001 under /usr/local/var/yaws/www

=INFO REPORT==== 11-Jul-2011::13:10:58 ===
Yaws: Listening to 0.0.0.0:8000 for <1> virtual servers:
 - http://localhost:8000 under /usr/local/var/yaws/www

=INFO REPORT==== 11-Jul-2011::13:10:58 ===
Yapp starting but Yaws not ready - waiting 500 ms
=INFO REPORT==== 11-Jul-2011::13:10:59 ===
Starting yapp

(dclements@server)1>

Видя страницу создателя зевки на yapp Я вижу некоторые дополнительные выходные данные после «Запуск yapp», где выглядит, как будто все зарегистрировано. Это не показывает, как долго я жду.

После этого попытка посетить веб-сайт не дает желаемого результата (http://localhost:8001/yapp/ приводит меня к странице «не найден»). Я, однако, вижу следующее:

(dclements@server)1> yapp:get_yapps().
[]
(dclements@server)2> yapp:get_bootstrap_yapps().
[{"ido",[{"/yapp",yapp}]}]

Изменение listen на 127.0.0.1 не изменило ни одного из результатов. Изменение имен серверов таким образом, чтобы они различались аналогично, не имеет никакого эффекта.

Я чувствую, что есть что-то базовое, но фундаментальное, чего мне не хватает, и поиск вокруг не дал хороших ответов. Любая помощь приветствуется.

1 Ответ

2 голосов
/ 12 августа 2012

Несмотря на то, что прошел год с тех пор, как вопрос был задан, и, возможно, автор уже сам нашел решение, я надеюсь, что мой ответ будет полезен для новичков, которые сталкиваются с проблемой, и столкнулись с этой проблемой. стр.

Итак, я обнаружил, что проблема не в yapp, а в начальной настройке Mnesia. Я просто попытался тщательно повторить все шаги, которые были описаны в вики, и это привело меня к успешному результату. Точнее, во-первых, я указал mnesia dir в файле yaws.conf:

mnesia_dir = ~/.mnesia

затем я перезапустил Mnesia (mnesia: stop / 0, mnesia: start / 0) и удалил схему (mnesia: delete_schema / 1). И наконец я повторил шаги от http://yaws.hyber.org/yapp_intro.yaws.

...