Я пытаюсь настроить AJAX Push Engine (APE) на моем Mac под управлением Mac OS X 10.6.4 и Apache 2.2.14
Когда я запускаю сервер APE, это результат:
Hristo$ sudo ./aped
Password:
_ ___ ___
/_\ | _ \ __|
/ _ \| _/ _|
/_/ \_\_| |___|
AJAX Push Engine
Bind on port 6969
Version : 1.00
Build : Dec 7 2009 23:05:18
Author : Weelya (contact@weelya.com)
[Module] [spidermonkey] Loading module : Javascript embeded (0.01) - Anthony Catel
[JS] Loading script ../scripts/framework/mootools.js
[JS] Loading script ../scripts/framework/Http.js
[JS] Loading script ../scripts/framework/userslist.js
[JS] Loading script ../scripts/utils/utils.js
[JS] Loading script ../scripts/commands/proxy.js
[JS] Loading script ../scripts/commands/inlinepush.js
[JS] Loading script ../scripts/examples/nickname.js
[JS] Loading script ../scripts/examples/move.js
[JS] Loading script ../scripts/utils/checkTool.js
В ape.conf
выглядит как:
uid {
# "aped" switch to this user/group if it run as root
user = daemon
group = daemon
}
Server {
port = 6969
daemon = no
ip_listen = 127.0.0.1
domain = localape
rlimit_nofile = 10000
pid_file = /var/run/aped.pid
}
Log {
debug = 1
use_syslog = 0
logfile = ./ape.log
}
JSONP {
eval_func = Ape.transport.read
allowed = 1
}
Config {
#relative to ape.conf
modules = ../modules/lib/
modules_conf = ../modules/conf/
}
# Proxy section is used to resolve hostname and allow access to a IP:port (Middleware-TCPSocket feature)
#Proxy {
# id = freenode
# host = irc.freenode.net
# port = 6667
# readonly = false
#}
... и виртуальный хост в httpd-vhosts.conf
файл выглядит так:
#
# Virtual Hosts
#
<Directory /Library/WebServer/Documents/APE>
Order Deny,Allow
Allow from all
</Directory>
#
# Use name-based virtual hosting.
#
NameVirtualHost *:80
<VirtualHost *:80>
ServerName localhost
DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>
<VirtualHost *:80>
Servername localape
ServerAlias ape.localape
ServerAlias *.ape.localape
DocumentRoot "/Library/WebServer/Documents/APE"
</VirtualHost>
Когда я запускаю тестовый файл в /Tools/Check/index.html
, Я прохожу тесты, пока не доберусь до сервера APE, где я получу следующую ошибку:
Running test : Contacting APE Server
Can't contact APE Server. Please check the your APE Server is running and the folowing url is pointing to your APE server : http://ape.localape:6969
Something went wrong. If you can't fix it by yourself post a message on the newsgroups with the output below or join our IRC channel
Есть идеи, как это исправить?
Спасибо.
Я понял. Отчасти проблема заключалась в том, что сеть, в которой я был, не позволяла мне делать такие вещи. После того, как я перешел в обычную сеть, я внес изменения, и она работает.
Ниже приведен файл конфигурации для APE. Единственные изменения, которые я сделал здесь, были в первых двух разделах:
uid {
# "aped" switch to this user/group if it run as root
user = Hristo
group = admin
}
Server {
port = 6969
daemon = no
ip_listen = 127.0.0.1
domain = local.ape-project.org
rlimit_nofile = 10000
pid_file = /var/run/aped.pid
}
Затем я изменил некоторые вещи в файле виртуальных хостов httpd-vhosts.conf
находится в /etc/apache2/extra/
. Вот как это выглядит:
<Directory /Library/WebServer/Documents/APE>
Order Deny,Allow
Allow from all
</Directory>
NameVirtualHost *:80
<VirtualHost *:80>
ServerName localhost
DocumentRoot "/Library/WebServer/Documents"
</VirtualHost>
<VirtualHost *:80>
Servername local.ape-project.org
ServerAlias ape.local.ape-project.org
ServerAlias *.ape.local.ape-project.org
DocumentRoot "/Library/WebServer/Documents/APE"
</VirtualHost>
Это означает, что я должен включить виртуальные хосты в файл конфигурации Apache. httpd.conf
находится в /etc/apache2
. Для этого я раскомментировал следующую строку, расположенную в конце файла:
# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf
Наконец, я добавил local.ape-project.org
к hosts
файл в /etc/
:
127.0.0.1 local.ape-project.org
В качестве руководства я использовал следующий источник: http://www.ape-project.org/wiki/index.php/Advanced_APE_configuration
Надеюсь это поможет.