我正在尝试在运行 Mac OS X 10.6.4 和 Apache 2.2.14 的 Mac 上设置 AJAX Push Engine (APE)
当我运行 APE 服务器时,输出如下:
Hristo$ sudo ./aped
Password:
_ ___ ___
/_\ | _ \ __|
/ _ \| _/ _|
/_/ \_\_| |___|
AJAX Push Engine
Bind on port 6969
Version : 1.00
Build : Dec 7 2009 23:05:18
Author : Weelya ([email protected])
[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
关于如何修复此问题有什么想法吗?
谢谢。
答案1
我搞明白了。部分问题在于我所在的网络不允许我这样做。一旦我转到正常网络,我进行了更改,它就可以正常工作了。
以下是 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>
因此,这意味着我必须在httpd.conf
位于的Apache 配置文件中包含虚拟主机/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
希望这可以帮助。