config-dist.php 16.4 KB
Newer Older
gustav_delius's avatar
gustav_delius committed
1
2
3
4
5
6
7
8
9
10
11
12
<?PHP // $Id$
///////////////////////////////////////////////////////////////////////////
//                                                                       //
// Moodle configuration file                                             //
//                                                                       //
// This file should be renamed "config.php" in the top-level directory   //
//                                                                       //
///////////////////////////////////////////////////////////////////////////
//                                                                       //
// NOTICE OF COPYRIGHT                                                   //
//                                                                       //
// Moodle - Modular Object-Oriented Dynamic Learning Environment         //
moodler's avatar
moodler committed
13
//          http://moodle.org                                            //
gustav_delius's avatar
gustav_delius committed
14
//                                                                       //
moodler's avatar
moodler committed
15
// Copyright (C) 1999 onwards  Martin Dougiamas  http://moodle.com       //
gustav_delius's avatar
gustav_delius committed
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
44
45
46
47
//                                                                       //
// This program is free software; you can redistribute it and/or modify  //
// it under the terms of the GNU General Public License as published by  //
// the Free Software Foundation; either version 2 of the License, or     //
// (at your option) any later version.                                   //
//                                                                       //
// This program is distributed in the hope that it will be useful,       //
// but WITHOUT ANY WARRANTY; without even the implied warranty of        //
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         //
// GNU General Public License for more details:                          //
//                                                                       //
//          http://www.gnu.org/copyleft/gpl.html                         //
//                                                                       //
///////////////////////////////////////////////////////////////////////////
unset($CFG);  // Ignore this line

//=========================================================================
// 1. DATABASE SETUP
//=========================================================================
// First, you need to configure the database where all Moodle data       //
// will be stored.  This database must already have been created         //
// and a username/password created to access it.                         //
//                                                                       //
//   mysql      - the prefix is optional, but useful when installing     //
//                into databases that already contain tables.            //
//
//   postgres7  - the prefix is REQUIRED, regardless of whether the      //
//                database already contains tables.                      //
//                                                                       //
// A special case exists when using PostgreSQL databases via sockets.    //
// Define dbhost as follows, leaving dbname, dbuser, dbpass BLANK!:      //
//    $CFG->dbhost = " user='muser' password='mpass' dbname='mdata'";    //
48
//
gustav_delius's avatar
gustav_delius committed
49
50

$CFG->dbtype    = 'mysql';       // mysql or postgres7 (for now)
51
$CFG->dbhost    = 'localhost';   // eg localhost or db.isp.com
gustav_delius's avatar
gustav_delius committed
52
53
54
55
56
$CFG->dbname    = 'moodle';      // database name, eg moodle
$CFG->dbuser    = 'username';    // your database username
$CFG->dbpass    = 'password';    // your database password
$CFG->prefix    = 'mdl_';        // Prefix to use for all table names

moodler's avatar
moodler committed
57
$CFG->dbpersist = false;         // Should database connections be reused?
58
59
                 // "false" is the most stable setting
                 // "true" can improve performance sometimes
moodler's avatar
moodler committed
60

gustav_delius's avatar
gustav_delius committed
61
62
63
64
65

//=========================================================================
// 2. WEB SITE LOCATION
//=========================================================================
// Now you need to tell Moodle where it is located. Specify the full
66
67
// web address to where moodle has been installed.  If your web site
// is accessible via multiple URLs then choose the most natural one
gustav_delius's avatar
gustav_delius committed
68
69
70
71
72
73
74
75
76
77
78
// that your students would use.  Do not include a trailing slash

$CFG->wwwroot   = 'http://example.com/moodle';


//=========================================================================
// 3. SERVER FILES LOCATION
//=========================================================================
// Next, specify the full OS directory path to this same location
// Make sure the upper/lower case is correct.  Some examples:
//
79
//    $CFG->dirroot = 'c:\program files\easyphp\www\moodle';    // Windows
gustav_delius's avatar
gustav_delius committed
80
//    $CFG->dirroot = '/var/www/html/moodle';     // Redhat Linux
81
//    $CFG->dirroot = '/home/example/public_html/moodle'; // Cpanel host
gustav_delius's avatar
gustav_delius committed
82

83
$CFG->dirroot   = '/home/example/public_html/moodle';
gustav_delius's avatar
gustav_delius committed
84
85
86
87
88
89


//=========================================================================
// 4. DATA FILES LOCATION
//=========================================================================
// Now you need a place where Moodle can save uploaded files.  This
90
91
// directory should be readable AND WRITEABLE by the web server user
// (usually 'nobody' or 'apache'), but it should not be accessible
gustav_delius's avatar
gustav_delius committed
92
93
94
95
96
97
98
99
100
101
102
103
104
105
// directly via the web.
//
// - On hosting systems you might need to make sure that your "group" has
//   no permissions at all, but that "others" have full permissions.
//
// - On Windows systems you might specify something like 'c:\moodledata'

$CFG->dataroot  = '/home/example/moodledata';


//=========================================================================
// 5. DATA FILES PERMISSIONS
//=========================================================================
// The following parameter sets the permissions of new directories
106
// created by Moodle within the data directory.  The format is in
gustav_delius's avatar
gustav_delius committed
107
// octal format (as used by the Unix utility chmod, for example).
108
// The default is usually OK, but you may want to change it to 0750
gustav_delius's avatar
gustav_delius committed
109
110
111
112
// if you are concerned about world-access to the files (you will need
// to make sure the web server process (eg Apache) can access the files.
// NOTE: the prefixed 0 is important, and don't use quotes.

113
$CFG->directorypermissions = 02777;
gustav_delius's avatar
gustav_delius committed
114
115
116
117
118


//=========================================================================
// 6. DIRECTORY LOCATION  (most people can just ignore this setting)
//=========================================================================
119
120
121
122
// A very few webhosts use /admin as a special URL for you to access a
// control panel or something.  Unfortunately this conflicts with the
// standard location for the Moodle admin pages.  You can fix this by
// renaming the admin directory in your installation, and putting that
gustav_delius's avatar
gustav_delius committed
123
124
125
126
127
128
// new name here.  eg "moodleadmin".  This will fix admin links in Moodle.

$CFG->admin = 'admin';


//=========================================================================
129
// 7. OTHER MISCELLANEOUS SETTINGS (ignore these for new installations)
130
131
//=========================================================================
//
132
133
134
// These are additional tweaks for which no GUI exists in Moodle yet.
//
//
135
136
137
// Prevent scheduled backups from operating (and hide the GUI for them)
// Useful for webhost operators who have alternate methods of backups
//      $CFG->disablescheduledbackups = true;
138
//
139
140
141
// Prevent stats processing and hide the GUI
//      $CFG->disablestatsprocessing = true;
//
moodler's avatar
moodler committed
142
143
// Setting this to true will enable admins to edit any post at any time
//      $CFG->admineditalways = true;
144
//
145
146
// These variables define DEFAULT block variables for new courses
// If this one is set it overrides all others and is the only one used.
147
148
149
//      $CFG->defaultblocks_override = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';
//
// These variables define the specific settings for defined course formats.
150
151
// They override any settings defined in the formats own config file.
//      $CFG->defaultblocks_site = 'site_main_menu,admin,course_list:course_summary,calendar_month';
152
153
154
155
//      $CFG->defaultblocks_social = 'participants,search_forums,calendar_month,calendar_upcoming,social_activities,recent_activity,admin,course_list';
//      $CFG->defaultblocks_topics = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';
//      $CFG->defaultblocks_weeks = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';
//
156
157
// These blocks are used when no other default setting is found.
//      $CFG->defaultblocks = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity';
158
//
moodler's avatar
moodler committed
159
//
160
161
162
163
// Allow unicode characters in uploaded files, generated reports, etc.
// This setting is new and not much tested, there are known problems
// with backup/restore that will not be solved, because native infozip
// binaries are doing some weird conversions - use internal PHP zipping instead.
164
// NOT RECOMMENDED FOR PRODUCTION SITES
165
//     $CFG->unicodecleanfilename = true;
166
//
167
168
// Seconds for files to remain in caches. Decrease this if you are worried
// about students being served outdated versions of uploaded files.
stronk7's avatar
stronk7 committed
169
//     $CFG->filelifetime = 86400;
170
171
172
//
// This setting will prevent the 'My Courses' page being displayed when a student
// logs in. The site front page will always show the same (logged-out) view.
stronk7's avatar
stronk7 committed
173
//     $CFG->disablemycourses = true;
174
// 
175
176
177
178
179
180
// If this setting is set to true, then Moodle will track the IP of the 
// current user to make sure it hasn't changed during a session.  This 
// will prevent the possibility of sessions being hijacked via XSS, but it 
// may break things for users coming using proxies that change all the time,
// like AOL.
//      $CFG->tracksessionip = true;
181
182
183
//
//
// The following lines are for handling email bounces.
184
185
186
//      $CFG->handlebounces = true;
//      $CFG->minbounces = 10;
//      $CFG->bounceratio = .20;
187
188
189
// The next lines are needed both for bounce handling and any other email to module processing.
// mailprefix must be EXACTLY four characters.
// Uncomment and customise this block for Postfix 
190
//      $CFG->mailprefix = 'mdl+'; // + is the separator for Exim and Postfix.
skodak's avatar
skodak committed
191
//      $CFG->mailprefix = 'mdl-'; // - is the separator for qmail 
192
//      $CFG->maildomain = 'youremaildomain.com';
193
194
195
196
//
// The following setting will tell Moodle to respect your PHP session 
// settings. Use this if you want to control session configuration
// from php.ini, httpd.conf or .htaccess files. 
197
//      $CFG->respectsessionsettings = true;
198
199
200
201
//
// This setting will cause the userdate() function not to fix %d in 
// date strings, and just let them show with a zero prefix.
//      $CFG->nofixday = true;
202
203
204
//
// This setting will make some graphs (eg user logs) use lines instead of bars
//      $CFG->preferlinegraphs = true;
205
//
206
// Enabling this will allow custom scripts to replace existing moodle scripts.
207
// For example: if $CFG->customscripts/course/view.php exists then
208
209
210
211
212
213
214
215
216
217
218
// it will be used instead of $CFG->wwwroot/course/view.php
// At present this will only work for files that include config.php and are called
// as part of the url (index.php is implied).
// Some examples are:
//      http://my.moodle.site/course/view.php
//      http://my.moodle.site/index.php
//      http://my.moodle.site/admin            (index.php implied)
// Custom scripts should not include config.php
// Warning: Replacing standard moodle scripts may pose security risks and/or may not
// be compatible with upgrades. Use this option only if you are aware of the risks
// involved. 
219
220
// Specify the full directory path to the custom scripts
//      $CFG->customscripts = '/home/example/customscripts';
221
//
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
// Performance profiling 
// 
//   If you set Debug to "Yes" in the Configuration->Variables page some
//   performance profiling data will show up on your footer (in default theme).
//   With these settings you get more granular control over the capture
//   and printout of the data
//
//   Capture performance profiling data
//   define('MDL_PERF'  , true);
//
//   Capture additional data from DB
//   define('MDL_PERFDB'  , true);
//
//   Print to log (for passive profiling of production servers)
//   define('MDL_PERFTOLOG'  , true);
//
//   Print to footer (works with the default theme)
//   define('MDL_PERFTOFOOT', true);
//
241
242
243
244
245
// Force displayed usernames
//   A little hack to anonymise user names for all students.  If you set these 
//   then all non-teachers will always see these for every person.
//       $CFG->forcefirstname = 'Bruce';
//       $CFG->forcelastname  = 'Simpson';
246
247
248
249
250
//
// The following setting will turn SQL Error logging on. This will output an
// entry in apache error log indicating the position of the error and the statement
// called. This option will action disregarding error_reporting setting.
//     $CFG->dblogerror = true;
251
//
Martin Langhoff's avatar
Martin Langhoff committed
252
253
254
255
// The following setting will log every database query to a table called adodb_logsql.
// Use this setting on a development server only, the table grows quickly!
//     $CFG->logsql = true;
//
256
257
258
259
260
// The following setting will turn on username logging into Apache log. For full details regarding setting
// up of this function please refer to the install section of the document.
//     $CFG->apacheloguser = 0; // Turn this feature off. Default value.
//     $CFG->apacheloguser = 1; // Log user id.
//     $CFG->apacheloguser = 2; // Log full name in cleaned format. ie, Darth Vader will be displayed as darth_vader.
261
262
263
//     $CFG->apacheloguser = 3; // Log username. 
// To get the values logged in Apache's log, add to your httpd.conf
// the following statements. In the General part put:
thepurpleblob's avatar
thepurpleblob committed
264
//     LogFormat "%h %l %{MOODLEUSER}n %t \"%r\" %s %b \"%{Referer}i\" \"%{User-Agent}i\"" moodleformat
265
266
267
268
269
270
// And in the part specific to your Moodle install / virtualhost:
//     CustomLog "/your/path/to/log" moodleformat
// CAUTION: Use of this option will expose usernames in the Apache log,
// If you are going to publish your log, or the output of your web stats analyzer
// this will weaken the security of your website.
// 
271
272
273
// Email database connection errors to someone.  If Moodle cannot connect to the 
// database, then email this address with a notice.
//
moodler's avatar
moodler committed
274
//     $CFG->emailconnectionerrorsto = 'your@emailaddress.com';
275
// 
276
// NOTE: if you are using custompix in your theme, see /fixpix.php.
277
278
// 
// special magic evil developer only wanting to edit the xmldb files manually
279
280
// AND don't use the XMLDBEditor nor the prev/next stuff at all (Mahara and others)
// Uncomment these if you're lazy like Penny
281
282
283
// $CFG->xmldbdisablecommentchecking = true;
// $CFG->xmldbdisablenextprevchecking = true;
//
284
285
286
287
288
289
// special magig evil developer only wanting to edit xmldb files manually
// AND allowing the XMLDBEditor to recostruct the prev/next elements every
// time one file is loaded and saved (Moodle).
// Uncomment this if you're lazy like Petr
// $CFG->xmldbreconstructprevnext = true;
//
290
291
292
293
294
295
296
297
// Set the priority of themes from highest to lowest. This is useful (for
// example) in sites where the user theme should override all other theme
// settings for accessibility reasons. You can also disable types of themes
// by removing them from the array. The default setting is:
//      $CFG->themeorder = array('page', 'course', 'category', 'session', 'user', 'site');
// NOTE: course, category, session, user themes still require the
// respective settings to be enabled
//
298
299
300
301
// When working with production data on test servers, no emails should ever be send to real users
// $CFG->noemailever = true;
//
//
gustav_delius's avatar
gustav_delius committed
302
303
304
//=========================================================================
// ALL DONE!  To continue installation, visit your main page with a browser
//=========================================================================
skodak's avatar
skodak committed
305
306
307
308
309
310
if ($CFG->wwwroot == 'http://example.com/moodle') {
    echo "<p>Error detected in configuration file</p>";
    echo "<p>Your server address can not be: \$CFG->wwwroot = 'http://example.com/moodle';</p>";
    die;
}

gustav_delius's avatar
gustav_delius committed
311
312
313
314
315
316
317
318
319
320
321
322
323
if (file_exists("$CFG->dirroot/lib/setup.php"))  {       // Do not edit
    include_once("$CFG->dirroot/lib/setup.php");
} else {
    if ($CFG->dirroot == dirname(__FILE__)) {
        echo "<p>Could not find this file: $CFG->dirroot/lib/setup.php</p>";
        echo "<p>Are you sure all your files have been uploaded?</p>";
    } else {
        echo "<p>Error detected in config.php</p>";
        echo "<p>Error in: \$CFG->dirroot = '$CFG->dirroot';</p>";
        echo "<p>Try this: \$CFG->dirroot = '".dirname(__FILE__)."';</p>";
    }
    die;
}
324
// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,
gustav_delius's avatar
gustav_delius committed
325
326
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.
?>