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!