- Check that the MAP systems users are created, Apache, PHP, and Touchstone are all installed on this system.
ls -l /home apachectl -version php --version /etc/init.d/shibd status
- Get the Drupal install package from the MAP software repository on Trogdor, and unpack it, and install into a home directory. Make sure you have set the "troguser" environment variable.
scp $troguser@trogdor:/opt/software-repository-tmp/PHP/drupal-6.4.tar.gz /home/www/tmp cd /home/www tar -xzvf /home/www/tmp/drupal-6.4.tar.gz ln -s /home/www/drupal-6.4 /home/www/drupal cd /home/www/drupal
- Change the DocumentRoot settings to reflect the Drupal directory.
sed -i s#'DocumentRoot "/home/www/apache/htdocs"'#'DocumentRoot "/home/www/drupal"'# /home/www/apache/conf/httpd.conf sed -i s#'DocumentRoot "/home/www/apache/htdocs"'#'DocumentRoot "/home/www/drupal"'# /home/www/apache/conf/extra/httpd-ssl.conf
- Create the settings.php file.
cd /home/www/drupal cp sites/default/default.settings.php sites/default/settings.php cp /home/www/apache/htdocs/phpinfo.php /home/www/drupal chown -R www:www /home/www chmod o+w /home/www/drupal/sites/default/settings.php chmod o+w /home/www/drupal/sites/default
- Setup the database.
- Create the database script
mkdir -p /home/www/sql cd /home/www/sql cat > setup-db-[dbname].sql create database [dbname]; grant all on [dbname].* to '[dbuser]'@'localhost' identified by '*****' with grant option; grant all on [dbname].* to '[dbuser]'@'localhost.localdomain' identified by '*****' with grant option; ^C cat > remove-db-[dbname].sql drop database [dbname]; revoke all privileges, grant option from '[dbuser]'@'localhost'; drop user '[dbuser]'@'localhost'; ^C mysql -p < setup-db-[dbname].sql
- Replace the socket setting for PHP with the local MySQL socket, or replace the MySQL server setting with the remote server that hosts the database.
- For a local database, replace the default socket with the local socket.
sed -i s#'mysql.default_socket ='#'mysql.default_socket = "/tmp/mysql.sock"'# /home/www/php/lib/php.ini sed -i s#'mysqli.default_socket ='#'mysqli.default_socket = "/tmp/mysql.sock"'# /home/www/php/lib/php.ini
- For a remote MySQL server, set the default port and host. Use the remote server's hostname to replace "MySQL server hostname".
sed -i s#'mysql.default_port ='#'mysql.default_port = "3306"'# /etc/php.ini sed -i s#'mysql.default_host ='#'mysql.default_host = "[MySQL server hostname]"'# /etc/php.ini sed -i s#'mysqli.default_port ='#'mysqli.default_port = "3306"'# /etc/php.ini sed -i s#'mysqli.default_host ='#'mysqli.default_host = "[MySQL server hostname]"'# /etc/php.ini
- For a local database, replace the default socket with the local socket.
- Create the database script
- Bounce the server to bring the added PHP options into use.
/etc/init.d/web restart
- To run the Drupal install script, go to the base URL of the server. If you encounter problems with SQL syntax errors, check your browsers cookie settings (must be enabled for the server your are setting up), check the various solutions on this site, then drop and recreate the database, and try again.
- For the site and root user email addresses, use mapsupport@`hostname -f`. Use the user facing hostname for the site hostname, and in the email addresses. Since there are occasionally problems with Drupal root users not named 'admin', use 'admin' as the root username for Drupal (pending: if this is confirmed as fixed, then use 'maproot').
- Edit /home/www/apache/conf/extra/httpd-modules.conf, and uncomment the line for mod_rewrite.so.
- Copy the Drupal .htaccess file into the Apache extra confs directory.
cp /home/www/drupal/.htaccess /home/www/apache/conf/extra/httpd-drupal.conf chown -R www:www /home/www
- Edit /home/www/apache/conf/httpd.conf, and add an Include for the Drupal configs at the bottom of the drupal directory section. Remove or comment out other settings.
<Directory "/home/www/drupal"> # Drupal configurations Include /home/www/apache/conf/extra/httpd-drupal.conf </Directory>
1 Comment
Paul B Hill
This document should make it clear if it applies to Drupal 5, 6 or both.