Skip to content Skip to navigation

Installing Drupal on Leland

Posted by: 
Topics: 
Tags: 

IT Services Installer

The instructions below are no longer needed unless you want to install Drupal manually. As of 4/10/09 IT Services offers an installer for Drupal. You can find it on http://tools.stanford.edu under Web Services, Collaboration Tools Installer.

Requirements for running Drupal in AFS space

  • Admin privileges in a group or department directory
  • cgi-bin directory. Drupal runs only in the Leland CGI environment, since PHP files will not execute in the normal WWW directories.
  • MySQL account for group or department. MySQL is only available for a group or dept. Go to the SQL service page and request a MySQL database. You will automatically receive database name and password which you'll need for the install.

Install directions

1. Get the Drupal distribution file and unpack it into your cgi-bin directory. Visit the Drupal site for the latest Drupal version. Method 1: Command Line Go to your cgi-bin. From there, you can use the program wget to download and unpack Drupal. Replace "/drupal-5.7.tar.gz" below with whichever version you are installing. The untarred files will be in a directory that has the name of the drupal version, for example, "drupal-5.7" wget -q -O -
http://ftp.drupal.org/files/projects/drupal-5.7.tar.gz
| tar zxv
This command gets the software as a compressed package, then unpacks/uncompresses it and throws away the compressed package all in one fell swoop. Note that you can use this command for installing modules as well: wget -q -O -
http://ftp.drupal.org/files/projects/coolest_module_ever-5.x-1.x-dev.tar.gz
| tar zxv
Method 2: SFTP You can use an FTP client (Fetch, Yummy FTP, Fugu or others) secure mode (SFTP) to install the Drupal package in your cgi-bin. Note that uncompressing the package (tarball) on your desktop and transfering it with one of these clients may change the ACL permissions of your drupal directory, so it is not recommended. Below is an example for a group called chr. What Fetch does: fs la drupal/ Access list for drupal/ is chr-admins rlidwka system:dept-admin rlidwka system:backup rl system:www-servers l system:administrators rlidwka service.mysql rl group-chr.cgi l What you need is: chr-admins rlidwka system:dept-admin rlidwka system:backup rl system:www-servers rl system:administrators rlidwka group-chr.cgi rlidwk 2. (Optional) Rename the drupal directory. You may want to change the name of your Drupal directory from drupal-5.7 (or whatever its default name is) to something else. The name can be whatever you like. From the command line, in the cgi-bin, use the "mv" command. In the example below, we are changing the name to "brassbuttons".
mv drupal-5.7 brassbuttons
3. Edit the .htaccess file in your Drupal installation directory to comment out any line that starts with "Options" or "php_value" by placing a # in front of it. (If you'd prefer to skip this step, you can download a drupal 5.7 tarball with a modified .htaccess file here.) To see the .htaccess file, use unix command ls -la to list hidden files. For example: #Options -Indexes and # php_value magic_quotes_gpc 0 comment out the lines shown below:
#Options -Indexes
#Options +FollowSymLinks
# PHP 4, Apache 1.

# php_value magic_quotes_gpc 0
# php_value register_globals 0
# php_value session.auto_start 0
# php_value mbstring.http_input pass
# php_value mbstring.http_output pass
# php_value mbstring.encoding_translation 0


# PHP 4, Apache 2.

# php_value magic_quotes_gpc 0
# php_value register_globals 0
# php_value session.auto_start 0
# php_value mbstring.http_input pass
# php_value mbstring.http_output pass
# php_value mbstring.encoding_translation 0


# PHP 5, Apache 1 and 2.

# php_value magic_quotes_gpc 0
# php_value register_globals 0
# php_value session.auto_start 0
# php_value mbstring.http_input pass
# php_value mbstring.http_output pass
# php_value mbstring.encoding_translation 0
4. Set up drupal. Go to the root page of your Drupal installation (https://www.stanford.edu/group_or_dept_path/cgi-bin/drupaltest/) and:
  • Choose the language you want to install Drupal in (instructions that follow assume you clicked the English version)
  • enter the [[MySQL database]] information: database name, username and password as well as the database host which is found under the advanced section and should be set to 127.0.0.1 NOT mysql-user.stanford.edu. This setting will set up a secure connection between your drupal instance and your MySQL database. For more information, see documentation on Stunnel.
  • Continue to the configuration of the site by choosing a site name, email address and creating the first administrator account.
  • Choose the default time zone.
  • You may not be able to enable Clean URLs just yet, so this option might be disabled.
5. Do some low-level administration on your new drupal site. If all has gone well, your drupal site is now up and running. Now you can do some preliminary administrative duties:
  • Set up clean urls
  • Set up admin role at drupal/admin/user/roles
  • Set up access control at drupal/admin/user/access
  • Set up file system, and set file system download method as "private" at drupal/admin/settings/file-system
  • Set up permissions for creating new accounts at drupal/admin/user/settings
  • Set up cron
  • Install administration menu module. Trust us, you'll LOVE it!!
NOTE ABOUT FILE HANDLING: The information below is legacy information no longer needed in your drupal install. If you set file system download method as "private" at drupal/admin/settings/file-system then Drupal accesses the files through the filesystem rather than through http and the .htaccess file is not processed. Please note that changing to private will result in some changes, not all well understand. I found that it shuts off the color wheel modification for Theme color. -vijoy Edit files/.htaccess. After you create a "files" directory through the Drupal admin interface (in Administer --> Site configuration --> File system), you need to edit the files/.htaccess file and set it up like this: #SetHandler Drupal_Security_Do_Not_Remove_See_SA_2006_006 #Options None #Options +FollowSymLinks Order allow,deny Allow from all