Difference between revisions of "AppSuite:Apache Configuration"

Line 1: Line 1:
 
=Apache Configuration=
 
=Apache Configuration=
  
If you read this in your browser you should have done this already:
+
To setup your development environment please follow these steps.
  
Check out the UI from git
+
==Setup build system==
Figure out Apache's document root. Common places are:
+
# Check out the UI from git
** MacOS: /Library/WebServer/Documents
+
# Figure out Apache's document root. Common places are:<br>MacOS: /Library/WebServer/Documents<br>Linux: /var/www
** Linux: /var/www
+
# Create a new folder appsuite in Apache's document root
* 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).
* You need node.js to build the UI<br>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:<br>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:<br>export buildir="/Library/WebServer/Documents/appsuite"
 
* Run the app loading server: ./appserver.sh
 
<br>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:
+
===Installing node.js===
 +
# Visit https://sites.google.com/site/nodejsmacosx/ and install stable version.
 +
# Open terminal
 +
# Set environment variable:<br>''export buildir="/Library/WebServer/Documents/appsuite"''
 +
# Build UI: '''./build.sh'''
 +
# 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.<br>local.conf: ''export buildir="/Library/WebServer/Documents/appsuite"''
  
* Make sure Apache loads the following modules:<br>mod_proxy, mod_proxy_ajp, mod_expires, mod_deflate, mod_rewrite, mod_headers, mod_mime, and mod_setenvif
+
===AppServer===
* Tell your Apache to process .htaccess files and how to connect to backend:
+
Run the app loading server: '''./appserver.sh''' Don't worry: If it doesn't tell you anything it's happily running.
::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!
+
==Apache config==
 +
Make sure Apache loads the following modules:<br>'''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!

Revision as of 19:39, 9 April 2013

Apache Configuration

To setup your development environment please follow these steps.

Setup build system

  1. Check out the UI from git
  2. Figure out Apache's document root. Common places are:
    MacOS: /Library/WebServer/Documents
    Linux: /var/www
  3. Create a new folder appsuite in Apache's document root
  4. You need node.js to build the UI. For MacOS (use /var/www instead of /Library/WebServer/Documents for debian).

Installing node.js

  1. Visit https://sites.google.com/site/nodejsmacosx/ and install stable version.
  2. Open terminal
  3. Set environment variable:
    export buildir="/Library/WebServer/Documents/appsuite"
  4. Build UI: ./build.sh
  5. 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"

AppServer

Run the app loading server: ./appserver.sh Don't worry: If it doesn't tell you anything it's happily running.

Apache config

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
  1. 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!