Instal Drupal (CMS)

# create database
mysql -u root -p
create database drupal;
CREATE USER drupalo IDENTIFIED BY 'drupalp';
grant all on drupal.* to 'drupalo'@'%' identified by "drupalp";
commit;
quit;

# create installation file on your webserver
cat < /var/www/drupal-install.php
<?php
# dowload
system("/usr/local/bin/wget http://ftp.drupal.org/files/projects/drupal-6.19.tar.gz");

# extract
system("/usr/bin/tar xzf ./drupal-*.tar.gz");

# move drupal files to current dir
system("/bin/mv drupal-*/* .");
system("/bin/mv drupal-*/.* .");

# configure
system("/bin/cp ./sites/default/default.settings.php ./sites/default/settings.php");
system("/bin/chmod +w ./sites/default/settings.php");
system("/bin/echo 'register_globals = OFF' >> php.ini");
#system("/bin/echo 'memory_limit = 40M' >> php.ini");

# enable clean urls
system("/usr/bin/sed -i 's|# RewriteBase|RewriteBase|g' .htaccess");

# clean up
system("/bin/rm -r drupal-*");
system("/bin/rm drupal-install.php");

# redirect to installation site
header('Location: index.php');
?>
EOF

# run install
http://YOUR_WEB_SERVER/drupal-install.php

# configure and post install drupal in your browser
http://YOUR_WEB_SERVER/drupal/install.php

# configure clean urls
http://www.panticz.de/url_rewrite

# enable search module (Enables site-wide keyword searching)
admin/build/modules
check "Search"
admin/user/permissions > search module
check "search content" and "use advanced search" for "anonymous user" and "authenticated user"

# enable contact module (Enables the use of both personal and site-wide contact forms)
admin/build/modules
check "Contact"

admin/build/contact/add
Category: Kontakt
Recipients: info@XXX.com

admin/user/permissions
enable "access site-wide contact form" for "anonymous user" and "authenticated user"

admin/build/path/add > URL aliases
Existing system path: contact
Path alias: Kontakt

# Disable User accounts creation
Administer > User management > User settings
admin/user/settings
Public registrations: Only site administrators can create new user accounts.

# allow img tag in "Configure Filtered HTML" contents
admin/settings/filters/1/configure
Allowed HTML tags:

# add footer
Administer > Site configuration > Site information
© XXX 2010 | Impressum | Kontakt | Webmaster

move "Powered by Drupal" from "Footer" do "Disabled"
move "Footer menu" from "Disabled" to "Footer"

# change main logo
admin/build/themes/settings/garland
Toggle display: check out Site name
Upload logo image: IMAGE

# make uploaded files visible
/admin/user/permissions
upload module > view uploaded files
anonymous user: check

# create imprint
node/add/page
Title: Impressum
Body: DEFAULT BODY TEXT
URL path settings: Impressum

# Drupal + Strato + PHP5
http://www.script-artists.de/2008/01/wieder-was-gelernt-strato-und-php5.html

# TODO:
# automatic install mod_rewrite