Machine/aslo-web
Jump to navigation
Jump to search
Set up
Below is the recipe that we used to set up the php server. Please see machine for up to date configuration details.
Install required php modules
pear config-set preferred_state beta pear install Archive_Zip
Create user to run scripts
sudo useradd -d /srv/activities activities
Make sure that all files in /srv/activities
- has apache(web-data) user
- activities group
- group write access
- umask is 002
Switch to activities user
sudo -i -u activities
Checkout ASLO sources
git clone git://git.sugarlabs.org/slo-activities/mainline.git ~ git checkout production -b production
Fetch external dependencies
cd ~/site/vendors/ svn co http://svn.mozilla.org/libs/product-details svn co http://svn.mozilla.org/libs/fizzypop.mozdev fizzypop svn co http://svn.mozilla.org/libs/phorms svn co http://svn.mozilla.org/libs/zxtm-api
Set up NFS mount points
Create directories
mkdir -p ~/files mkdir -p ~/staging
Add the following lines to the end of `/etc/fstab'
sunjammer.sugarlabs.org:/srv/nfs/activities/files /srv/activities/files nfs rsize=8192,wsize=8192,timeo=14,intr sunjammer.sugarlabs.org:/srv/nfs/activities/staging /srv/activities/staging nfs rsize=8192,wsize=8192,timeo=14,intr
First-time ASLO setup
Using ~/aslo/config.php as template, setup ASLO settings in file ~/site/app/config/config.php. Template file was configured for dev environment, switch it to production by setting SITE_STATE variable to production.
Setup other env defines in file ~/site/app/config/config-local.php
define('DEBUG', 0); define('DEV', false); define('QUERY_CACHE', true);
Create directories
mkdir -p ~/site/app/tmp/cache/persistent mkdir -p ~/site/app/tmp/cache/models mkdir -p ~/site/app/tmp/cache/views mkdir -p ~/files/temp mkdir -p ~/files/extracted mkdir -p ~/data
Minify css/js stuff
~/aslo/minify.py
Merge ASLO gettext strings
~/aslo/po-compile.sh
Crontab for activities user
@hourly $HOME/aslo/cron/hourly # do not use @daily to make sure that we start job after aslo-proxy 01 08 * * * $HOME/aslo/cron/daily
Create vhost
vim /etc/apache2/sites-available/activities.sl.org
<VirtualHost *:80 *:443> ServerName activities.sugarlabs.org ServerAlias activities2.sugarlabs.org # for test/install ServerAdmin webmaster@sugarlabs.org DocumentRoot /srv/activities/site/app/webroot LogFormat "%h %V %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\" \"%{HTTP_COOKIE}i\"" addons CustomLog /srv/activities/data/access addons CustomLog /var/log/apache2/all-access.log vhost_combined #CustomLog /var/log/apache2/performance.log performance </VirtualHost>