Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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.

share|improve this question
up vote 1 down vote accepted

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.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.