INSTALL.txt 6.68 KB
Newer Older
1
// $Id$
Dries's avatar
Dries committed
2

3 4 5
REQUIREMENTS
------------

6 7
Drupal requires a web server, PHP4 (http://www.php.net/) and MySQL or a
database server supported by the PHP PEAR API (http://pear.php.net/)
8

9 10
NOTE: The Apache web server and MySQL database are strongly recommended;
other web server and database combinations such as IIS and PostgreSQL
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
are possible but tested to a lesser extend.

SERVER CONFIGURATION
--------------------

Your PHP must have the following settings:

  session.save_handler     user

In addition, we recommend the following settings:

  session.cache_limiter    none

These values are set in php.ini and can be overwritten in a .htaccess
file; you can print out your local PHP settings with PHP's phpinfo()
function.

OPTIONAL COMPONENTS
-------------------

- To use XML-based services such as the Blogger API, Jabber, RSS
  syndication, you will need PHP's XML extension.  This extension is
  enabled by default in standard PHP4 installations.

- If you want support for clean URLs, you'll need mod_rewrite and
  the ability to use local .htaccess files. (More information can
  be found in the Drupal handbook on drupal.org.)

INSTALLATION
------------

1. DOWNLOAD DRUPAL

44
   You can obtain the latest Drupal release from http://drupal.org/.
45 46 47 48 49 50 51
   Download the current tar.gz format and extract the files:

     $ wget http://drupal.org/drupal/drupal-x.x.x.tgz
     $ tar -zxvf drupal-x.x.x.tgz

   This will create a new directory drupal-x.x.x/ containing all
   Drupal files and directories.  Move the contents of that directory
52
   into a directory within your web server's document root or your
53 54
   public HTML directory:

Dries's avatar
Dries committed
55
     $ mv drupal-x.x.x /var/www/html
56 57 58 59 60 61

   NOTE: when copying files, ensure you also copy the hidden .htaccess
   file.

2. CREATE THE DRUPAL DATABASE

62 63 64 65 66
   These instructions are for MySQL.  If you are using another database,
   check the database documentation.  In the following examples,
   "dba_user" is an example MySQL user which has the CREATE and GRANT
   privileges.  You will need to use the appropriate user name for your
   system.
67

68 69
   First, you must create a new database for your Drupal site:

70
     $ mysqladmin -u dba_user -p create drupal
71

72
   MySQL will prompt for the dba_user database password and then create
73 74 75
   the initial database files.  Next you must login and set the access
   database rights:

76
     $ mysql -u dba_user -p
77

78
   Again, you will be asked for the dba_user database password.  At the
79 80 81
   MySQL prompt, enter following command:

     GRANT ALL PRIVILEGES ON drupal.*
82
        TO nobody@localhost IDENTIFIED BY 'password';
83 84 85 86

   where

    'drupal' is the name of your database
87 88
    'nobody@localhost' is the userid of your webserver MySQL account
    'password' is the password required to log in as the MySQL user
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103

   If successful, MySQL will reply with

     Query OK, 0 rows affected

   to activate the new permissions you must enter the command

     flush privileges;

   and then enter '\q' to exit MySQL.

3. LOAD THE DRUPAL DATABASE SCHEME

   Once you have a database, you must load the required tables:

104
     $ mysql -u nobody -p drupal < database/database.mysql
105 106 107

4. CONNECTING DRUPAL

Dries's avatar
Dries committed
108
   Drupal server options are specified in includes/conf.php.
109 110 111 112

   Drupal allows for multiple virtual host installations; to configure
   a virtual server host, you can create the configuration file

113
     includes/www.example.com.php
114

115
   where www.example.com is your website's URL.
116

117 118 119
   Before you can run Drupal, you must set the database URL and the
   base URL to the web site.  Open the configuration file and edit the
   $db_url line to match the database defined in the previous steps:
120 121 122

     $db_url = "mysql://username:password@localhost/drupal";

123 124
   Set $base_url to match the address to your web site:

125
     $base_url = "http://www.example.com";
126 127 128 129 130 131 132 133 134 135 136 137 138

   NOTE: for more information about multiple virtual hosts or the
   configuration settings, consult the Drupal handbook at drupal.org.

5. CONFIGURE DRUPAL

   You can now launch your browser and point it to your Drupal site.

   Create an account and login.  The first account will automatically
   become the main administrator account.

6. CRON TASKS

139
   Many Drupal modules have periodic tasks that must be triggered by a
140 141 142 143 144 145 146
   cron job.  To activate these tasks, you must call the cron page;
   this will pass control to the modules and the modules will decide
   if and what they must do.

   The following example crontab line will activate the cron script
   on the hour:

147
   0    *   *   *   *   wget -O - -q http://HOSTNAME/cron.php
148 149 150 151 152 153 154 155

   More information about the cron scripts are available in the admin
   help pages and in the Drupal handbook at drupal.org.  Example
   scripts can be found in the scripts/ directory.

DRUPAL ADMINISTRATION
---------------------

156 157 158 159 160 161
Upon a new installation, your Drupal website defaults to a very basic
configuration with only a few active modules, one theme, and no user
access rights.

Use your administration panel to enable and configure services. For
example, set some general settings for your site with "Administration -
162 163 164
configuration".  Enable modules via "Administration -  configuration -
modules".  User permissions can be set with "Administration - accounts
- permissions".
165 166 167 168 169 170

For more information on configuration options, read through the
instructions which accompany the different configuration settings and
consult the various help pages available in the administration panel.

Note that additional community-contributed modules and themes are
171
available at http://drupal.org/.
172 173 174 175 176 177 178 179

CUSTOMIZING YOUR THEME(S)
-------------------------

Now that your server is running, you will want to customize the look
of your site.  Several sample themes are included in the Drupal
installation and more can be downloaded from drupal.org.

180
Customizing each theme depends on the theme.  In general, each theme
181 182 183 184
contains a PHP file themename.theme which defines a function header()
that can be changed to reference your own logos.

Most themes also contain stylesheets or PHP configuration files to
185
tune the colors and layouts; check the themes/ directory for README
186 187
files describing each alternate theme.

188 189 190 191 192 193 194 195 196 197 198 199 200 201 202
UPGRADING
---------

1. Backup your database and Drupal directory - especially your
   configuration file (www.example.com.conf or includes/conf.php).

2. Log on as the user with user ID 1.

3. Overwrite all the old Drupal files with the new Drupal files.

4. Modify the new configuration file to make sure it has the
   correct information.

5. Run update.php by visiting http://www.example.com/update.php.

203 204 205 206 207
MORE INFORMATION
----------------

For platform specific configuration issues and other installation and
administration assistance, please consult the Drupal handbook at
208 209
http://drupal.org/.  You can also find support at the Drupal support
forum or through the Drupal mailing lists.
Dries's avatar
Dries committed
210