AppSuite:Apache Configuration
From Open-Xchange
Apache Configuration
If you read this in your browser you should have done this already:
- Check out the UI from git
- Figure out Apache's document root. Common places are:
* MacOS: /Library/WebServer/Documents * Linux: /var/www
- Create a new folder appsuite in Apache's document root
- You need node.js to build the UI
For MacOS (use /var/www instead of /Library/WebServer/Documents for debian):
* Visit https://sites.google.com/site/nodejsmacosx/ and install stable version. * Open terminal * Set environment variable:
export buildir="/Library/WebServer/Documents/appsuite" * Build UI: ./build.sh * Build documentation: ./build.sh docs * Note: Instead of exporting the builddir every time your want to build the ui or run the appserver, you can also create a file local.conf and set the directory in there. This way, every time the buildsystem or appserver runs, it automatically picks up the correct directory. * local.conf:
export buildir="/Library/WebServer/Documents/appsuite"
- Run the app loading server: ./appserver.sh
Don't worry: If it doesn't tell you anything it's happily running.
- If everything works fine, the documentation should be at http://localhost/appsuite/doc.
Now configure Apache:
- Make sure Apache loads the following modules:
mod_proxy, mod_proxy_ajp, mod_expires, mod_deflate, mod_rewrite, mod_headers, mod_mime, and mod_setenvif
- Tell your Apache to process .htaccess files and how to connect to backend:
ProxyPass /appsuite/api/apps/load/ http://localhost:8337/apps/load/ ProxyPass /appsuite/api ajp://127.0.0.1:8009/ajax # optional parameters: retry=0 connectiontimeout=5 timeout=10
<Directory /Library/WebServer/Documents/appsuite> Options None +FollowSymLinks AllowOverride Indexes FileInfo </Directory>
Use the proper document root depending on your OS or custom configuration!
- If backend does not run on localhost (127.0.0.1), you have to adjust the ProxyPass directive.
- Restart Apache, e.g. sudo apachectl restart
And please double check everything you're doing!