information, files and programs
Quick Links
 
 
 
 
 
Drupal on a small virtual server - notes

Minimal requirements

Memory: 256 MB (enlarged to 320 MB)
Disc: 3.5 GB
OS: Ubuntu Server 10.04.1 LTS

Server configuration files

/etc/apache2/sites-enabled/000-default
/etc/apache2/apache2.conf
/etc/cron.d/drupal
/etc/cron.d/php5
/etc/mysql/my.cnf

/etc/php5/apache2/php.ini
Remark: memory_limit increased to 256 MB in order to rebuild xml sitemap

Installation

apt-get install screen nano htop zip cadaver lynx

screen
# LAMP Server
# OPENSSH Server
# Mailserver
tasksel

# upgrade 
apt-get upgrade

# restart
shutdown -r now

apt-get install php-pear php5-dev

pecl install uploadprogress

# „extension=uploadprogress.so“ --> php.ini
nano php.ini

# mysql conf modifications
# ...
service mysql restart

apt-get install phpmyadmin


/etc/apache2/sites-enabled# ln -s /etc/phpmyadmin/apache.conf 001-phpmyadmin
root@test:/etc/apache2/mods-enabled# ln -s ../mods-available/rewrite.load ./
root@test:/etc/apache2/mods-enabled# ln -s ../mods-available/headers.load ./

service apache2 restart

# edit drupal config file - section tracking 

    $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';
    $cfg['Servers'][$i]['tracking'] = 'pma_tracking';

# http://drupal.org/getting-started/6/install/create-database


wget http://ftp.drupal.org/files/projects/drupal-6.19.tar.gz
tar xfvz drupal-6.19.tar.gz
root@test:~/drupal-6.19# mv * /var/www/

root@test:/var/www# cd sites/default/
root@test:/var/www/sites/default# cp default.settings.php settings.php
root@test:/var/www/sites/default# cd ..\..

root@test:/var/www# chmod a+w sites/default
root@test:/var/www/sites/default# chmod a+w settings.php

# Drupal web installation
http://test/

root@test:/var/www# chmod -R a-w sites/

# apache2.conf - modify

nano /etc/cron.d/drupal
40 * * * * root /usr/bin/wget -O - -q -t 1 http://test/cron.php

root@test:/etc/apache2/sites-available# nano default
   RewriteEngine on
   RewriteBase /
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteCond %{REQUEST_FILENAME} !-d
   RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
Override All

# Drupal: enable clean url

# CS language
http://test/admin/settings/language

#Path prefix only
http://test/admin/settings/language/configure

echo "martin.mevald@seznam.cz" >/root/.forward
echo "martin.mevald@seznam.cz" >/home/martinmev/.forward

# Drupal modules
for x in ../*.tar.gz ; do tar xfz "$x" ; done

mkdir /var/www/sites/all/modules
mv * /var/www/sites/all/modules

#jquery ui
root@test:~/drupal-modules/modules2# mv jquery.ui-1.6 jquery.ui
root@test:~/drupal-modules/modules2# 
mv jquery.ui /var/www/sites/all/modules/jquery_ui/

# file upload 10M
root@test:/etc/php5/apache2# nano php.ini

root@test:/var/www# mkdir cache
root@test:/var/www# mkdir cache/perm
root@test:/var/www# mkdir cache/perm/test/
root@test:/var/www# chown -R www-data.www-data cache

root@test:/var/www# chmod ug+rw cache

root@test:/var/www# nano robots.txt
„Disallow: /boost_stats.php“

root@test:/var/www# touch /var/www/.htaccess

apt-get install php-getid3
root@test:/var/www/sites/all/libraries# ln -s /usr/share/php-getid3/ getid3

# drupal getid3 configuration

cd /var/www/sites/all/modules/ckeditor/
tar xfvz ~/drupal-modules/ckeditor_3.4.2.tar.gz


#2.) Download SWFUpload-Core v2.2.* at http://code.google.com/p/swfupload/ and
# extract the following files from the zip file: swfupload.swf, swfupload.js,
# swfupload.queue.js
#    Put these files into sites/all/modules/image_fupload/swfupload subdirectory

root@test:/var/www# mkdir tmp
root@test:/var/www# chmod ug+rwt tmp
root@test:/var/www# mkdir tmp/image
root@test:/var/www# chmod ug+rwt tmp/image
root@test:/var/www# chown -R www-data.www-data tmp/

apt-get install imagemagick

# Image toolkit
# Select an image processing toolkit:
# GD2 image manipulation toolkit
# ImageMagick Toolkit.



#	There are php errors on this page, preventing boost from caching. ERROR:
# Array      [type] => 8192
#      [message] => Comments starting with '#' are deprecated in 
# /etc/php5/apache2/conf.d/mcrypt.ini on line 1
#      [file] => Unknown
#      [line] => 0

# configuration for php MCrypt module --> ; configuration for php MCrypt module
nano /etc/php5/apache2/conf.d/mcrypt.ini


# http://2bits.com/articles/php-op-code-caches-accelerators-a-must-for-a-large-site.html
# also for the module Devel
apt-get install php-apc
echo 'apc.shm_size="64"' >>/etc/php5/apache2/conf.d/apc.ini
service apache2 restart

# copy Drupal themes
mkdir /var/www/sites/all/themes
cp -r fusion scratch  zen /var/www/sites/all/themes/


# creating self-signed ssl certificate
make-ssl-cert generate-default-snakeoil --force-overwrite

# enabling ssl module
cd /etc/apache2/conf/mods-enabled
ln -s ../mods-available/ssl.load ./
ln -s ../mods-available/ssl.conf ./

# edit config file - copy Drupal settings and 
# enable the ssl site for all IPs (character '*').
cd /etc/apache2/sites-available
nano default-ssl 

cd /etc/apache2/sites-enabled/
ln -s ../sites-available/default-ssl 002-default-ssl

# restarting apache
service apache2 restart