I'm trying to set up the AJAX Push Engine (APE) on my Mac, running Mac OS X 10.6.4 and Apache 2.2.14
When I run the APE server, this is the output:
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
The ape.conf
looks like:
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
#}
... and the virtual host stuff in the httpd-vhosts.conf
file looks like:
#
# 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>
When I run the test file in /Tools/Check/index.html
, I pass the tests until I get to the APE Server where I get the following error:
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
Any ideas as to how to fix this?
Thanks.
I figured it out. Part of the problem was that the network I was on didn't allow me to do this kind of thing. Once I moved to a normal network, I made changes and it works.
The following is the configuration file for APE. The only changes I made here were in the first two sections:
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
}
Next, I changed some things in the virtual hosts file httpd-vhosts.conf
located in /etc/apache2/extra/
. This is what it looks like:
<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>
So this means I have to include virtual hosts in the Apache configuration file httpd.conf
located in /etc/apache2
. To this, I uncommented the following line which is located towards the bottom of the file:
# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf
Finally, I added local.ape-project.org
to the hosts
file in /etc/
:
127.0.0.1 local.ape-project.org
I used the following source to guide me: http://www.ape-project.org/wiki/index.php/Advanced_APE_configuration
Hope this helps.