====== Gandi AI Tutorials ======
===== CMS ======
* [[en:hosting:using-linux:tutorials:gandiai:ezpublish|Installing eZ Publish on Gandi AI]]
* [[en:hosting:using-linux:tutorials:gandiai:joomla|Installing Joomla! on Gandi AI]]
* [[en:hosting:using-linux:tutorials:gandiai:spip]]
===== E-Commerce =====
* [[en:hosting:using-linux:tutorials:gandiai:oscommerce|Installing osCommerce on Gandi AI]]
===== Groupware =====
* [[en:hosting:using-linux:tutorials:gandiai:ovidentia|Installing Ovidentia on Gandi AI]]
===== Subversion =====
* [[en:hosting:using-linux:tutorials:gandiai:subversion|Use Subversion with Gandi AI]]
===== Programming =====
* [[en:hosting:using-linux:tutorials:gandiai:deploying-rails-applications|Deploying a Ruby on Rails application with Gandi AI]]
===== Quit Gandi AI to install a SSL virtualhost on Apache2 =====
You will have to use another MPM (Apache connections manager) than PerUser which is used by default in Gandi AI, PerUser can not yet support SSL.
I suggest you to use the Prefork MPM which is the one by default in Apache2, type the following command in order to do this : aptitude (or apt-get) install apache2-mpm-prefork.
You will have to adapt the rights/permissions of the documentroot of your virtualhost regarding the Apache configuration.
===== Create a virtualhost and an FTP user after quitting Gandi AI (if you always use PerUser) =====
Log in on your VPS using SSH and the 'admin' system user, then type the "su -" command ("-" allows to use the root environnement variables for information).
Go in the virtualhosts configuration folder :
cd /etc/apache2/sites-available/
Copy a virtualhost :
cp 000-www.example.net 001-www.domain.tld
Modif it using your prefered editor:
nano/emacs/vim/... 001-www.domain.tld
Configure the necessary options:
ServerName www.domain.tld
ServerAlias domain.tld
ServerAdmin webmaster@domain.tld
DocumentRoot "/srv/d_data/www/www.domain.tld/htdocs"
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
ScriptAlias /cgi-bin/ /srv/d_data/www/www.domain.tld/cgi-bin/
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
ErrorLog /srv/d_data/www/www.domain.tld/logs/www.domain.tld-error.log
LogLevel error
SetEnvIf Remote_Addr "127\.0\.0\.1" loopback
CustomLog /srv/d_data/www/www.domain.tld/logs/www.domain.tld-access.log combined env=!loopback
ServerSignature On
DAVLockDB /srv/d_data/www/www.domain.tld/db/DAVLock
ServerEnvironment userftp_www-userftp
MaxProcessors 20
Include /etc/apache2/sites-includes/www.domain.tld/
Create folders & files needed for this vhost :
mkdir /etc/apache2/sites-includes/www.domain.tld/
mkdir /srv/d_data/www/www.domain.tld/
mkdir /srv/d_data/www/www.domain.tld/htdocs/
mkdir /srv/d_data/www/www.domain.tld/logs/
mkdir /srv/d_data/www/www.domain.tld/db/
mkdir /srv/d_data/www/www.domain.tld/cgi-bin/
touch /srv/d_data/www/www.domain.tld/logs/www.domain.tld-access.log
touch /srv/d_data/www/www.domain.tld/logs/www.domain.tld-error.log
Then the FTP user and its group :
adduser userftp
addgroup www-userftp
adduser admin www-userftp
adduser userftp www-userftp
adduser www-data www-userftp
Give rights on folders & files to the FTP user :
chown -R userftp:www-userftp /srv/d_data/www/www.domain.tld/
Modify the root folder for the FTP user and its default shell :
userftp:x:1002:1002::/srv/d_data/www/www.domain.tld/:/bin/false
Activate the vhost & restart Apache :
a2ensite 001-www.domain.tld
/etc/init.d/apache2 restart