Commit | Line | Data |
---|---|---|
dfede59d | 1 | <?PHP |
6077020a | 2 | /////////////////////////////////////////////////////////////////////////// |
3 | // // | |
4 | // Moodle configuration file // | |
5 | // // | |
6 | // This file should be renamed "config.php" in the top-level directory // | |
7 | // // | |
8 | /////////////////////////////////////////////////////////////////////////// | |
9 | // // | |
10 | // NOTICE OF COPYRIGHT // | |
11 | // // | |
12 | // Moodle - Modular Object-Oriented Dynamic Learning Environment // | |
c6b456f6 | 13 | // http://moodle.org // |
6077020a | 14 | // // |
3b365361 | 15 | // Copyright (C) 1999 onwards Martin Dougiamas http://moodle.com // |
6077020a | 16 | // // |
17 | // This program is free software; you can redistribute it and/or modify // | |
18 | // it under the terms of the GNU General Public License as published by // | |
19 | // the Free Software Foundation; either version 2 of the License, or // | |
20 | // (at your option) any later version. // | |
21 | // // | |
22 | // This program is distributed in the hope that it will be useful, // | |
23 | // but WITHOUT ANY WARRANTY; without even the implied warranty of // | |
24 | // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // | |
25 | // GNU General Public License for more details: // | |
26 | // // | |
27 | // http://www.gnu.org/copyleft/gpl.html // | |
28 | // // | |
29 | /////////////////////////////////////////////////////////////////////////// | |
30 | unset($CFG); // Ignore this line | |
c57e9015 | 31 | $CFG = new stdClass(); |
6077020a | 32 | |
33 | //========================================================================= | |
34 | // 1. DATABASE SETUP | |
35 | //========================================================================= | |
36 | // First, you need to configure the database where all Moodle data // | |
37 | // will be stored. This database must already have been created // | |
38 | // and a username/password created to access it. // | |
39 | // // | |
40 | // mysql - the prefix is optional, but useful when installing // | |
41 | // into databases that already contain tables. // | |
42 | // | |
43 | // postgres7 - the prefix is REQUIRED, regardless of whether the // | |
44 | // database already contains tables. // | |
45 | // // | |
46 | // A special case exists when using PostgreSQL databases via sockets. // | |
47 | // Define dbhost as follows, leaving dbname, dbuser, dbpass BLANK!: // | |
48 | // $CFG->dbhost = " user='muser' password='mpass' dbname='mdata'"; // | |
eb2042f6 | 49 | // |
6077020a | 50 | |
51 | $CFG->dbtype = 'mysql'; // mysql or postgres7 (for now) | |
eb2042f6 | 52 | $CFG->dbhost = 'localhost'; // eg localhost or db.isp.com |
6077020a | 53 | $CFG->dbname = 'moodle'; // database name, eg moodle |
54 | $CFG->dbuser = 'username'; // your database username | |
55 | $CFG->dbpass = 'password'; // your database password | |
6077020a | 56 | $CFG->prefix = 'mdl_'; // Prefix to use for all table names |
57 | ||
1e55ed26 | 58 | $CFG->dbpersist = false; // Should database connections be reused? |
eb2042f6 | 59 | // "false" is the most stable setting |
60 | // "true" can improve performance sometimes | |
1e55ed26 | 61 | |
6077020a | 62 | |
63 | //========================================================================= | |
64 | // 2. WEB SITE LOCATION | |
65 | //========================================================================= | |
66 | // Now you need to tell Moodle where it is located. Specify the full | |
eb2042f6 | 67 | // web address to where moodle has been installed. If your web site |
68 | // is accessible via multiple URLs then choose the most natural one | |
6077020a | 69 | // that your students would use. Do not include a trailing slash |
11e7b506 | 70 | // |
71 | // If you need both intranet and Internet access please read | |
72 | // http://docs.moodle.org/en/masquerading | |
6077020a | 73 | |
74 | $CFG->wwwroot = 'http://example.com/moodle'; | |
75 | ||
76 | ||
77 | //========================================================================= | |
78 | // 3. SERVER FILES LOCATION | |
79 | //========================================================================= | |
80 | // Next, specify the full OS directory path to this same location | |
81 | // Make sure the upper/lower case is correct. Some examples: | |
82 | // | |
6f6b8f3f | 83 | // $CFG->dirroot = 'C:\program files\easyphp\www\moodle'; // Windows |
6077020a | 84 | // $CFG->dirroot = '/var/www/html/moodle'; // Redhat Linux |
5ec98a94 | 85 | // $CFG->dirroot = '/home/example/public_html/moodle'; // Cpanel host |
6077020a | 86 | |
5ec98a94 | 87 | $CFG->dirroot = '/home/example/public_html/moodle'; |
6077020a | 88 | |
89 | ||
90 | //========================================================================= | |
91 | // 4. DATA FILES LOCATION | |
92 | //========================================================================= | |
93 | // Now you need a place where Moodle can save uploaded files. This | |
eb2042f6 | 94 | // directory should be readable AND WRITEABLE by the web server user |
95 | // (usually 'nobody' or 'apache'), but it should not be accessible | |
6077020a | 96 | // directly via the web. |
97 | // | |
98 | // - On hosting systems you might need to make sure that your "group" has | |
99 | // no permissions at all, but that "others" have full permissions. | |
100 | // | |
101 | // - On Windows systems you might specify something like 'c:\moodledata' | |
102 | ||
103 | $CFG->dataroot = '/home/example/moodledata'; | |
104 | ||
105 | ||
106 | //========================================================================= | |
107 | // 5. DATA FILES PERMISSIONS | |
108 | //========================================================================= | |
109 | // The following parameter sets the permissions of new directories | |
eb2042f6 | 110 | // created by Moodle within the data directory. The format is in |
6077020a | 111 | // octal format (as used by the Unix utility chmod, for example). |
eb2042f6 | 112 | // The default is usually OK, but you may want to change it to 0750 |
6077020a | 113 | // if you are concerned about world-access to the files (you will need |
114 | // to make sure the web server process (eg Apache) can access the files. | |
115 | // NOTE: the prefixed 0 is important, and don't use quotes. | |
116 | ||
d99bab2d | 117 | $CFG->directorypermissions = 02777; |
6077020a | 118 | |
119 | ||
120 | //========================================================================= | |
121 | // 6. DIRECTORY LOCATION (most people can just ignore this setting) | |
122 | //========================================================================= | |
eb2042f6 | 123 | // A very few webhosts use /admin as a special URL for you to access a |
124 | // control panel or something. Unfortunately this conflicts with the | |
125 | // standard location for the Moodle admin pages. You can fix this by | |
126 | // renaming the admin directory in your installation, and putting that | |
6077020a | 127 | // new name here. eg "moodleadmin". This will fix admin links in Moodle. |
128 | ||
129 | $CFG->admin = 'admin'; | |
130 | ||
131 | ||
132 | //========================================================================= | |
92848614 | 133 | // 7. OTHER MISCELLANEOUS SETTINGS (ignore these for new installations) |
21d1d077 | 134 | //========================================================================= |
135 | // | |
c9ca1fa5 | 136 | // These are additional tweaks for which no GUI exists in Moodle yet. |
137 | // | |
9c733e86 | 138 | // Starting in PHP 5.3 administrators should specify default timezone |
139 | // in PHP.ini, you can also specify it here if needed. | |
140 | // See details at: http://php.net/manual/en/function.date-default-timezone-set.php | |
141 | // List of time zones at: http://php.net/manual/en/timezones.php | |
142 | // date_default_timezone_set('Australia/Perth'); | |
c9ca1fa5 | 143 | // |
1ed96821 | 144 | // Change the key pair lifetime for Moodle Networking |
145 | // The default is 28 days. You would only want to change this if the key | |
146 | // was not getting regenerated for any reason. You would probably want | |
147 | // make it much longer. Note that you'll need to delete and manually update | |
148 | // any existing key. | |
149 | // $CFG->mnetkeylifetime = 28; | |
150 | // | |
92848614 | 151 | // Prevent scheduled backups from operating (and hide the GUI for them) |
152 | // Useful for webhost operators who have alternate methods of backups | |
153 | // $CFG->disablescheduledbackups = true; | |
21d1d077 | 154 | // |
72df7e1e | 155 | // Prevent stats processing and hide the GUI |
156 | // $CFG->disablestatsprocessing = true; | |
157 | // | |
7758d00f | 158 | // Setting this to true will enable admins to edit any post at any time |
159 | // $CFG->admineditalways = true; | |
cec0a0fc | 160 | // |
5fd1a5d8 | 161 | // These variables define DEFAULT block variables for new courses |
162 | // If this one is set it overrides all others and is the only one used. | |
3eecaaf4 | 163 | // $CFG->defaultblocks_override = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity'; |
164 | // | |
165 | // These variables define the specific settings for defined course formats. | |
5fd1a5d8 | 166 | // They override any settings defined in the formats own config file. |
167 | // $CFG->defaultblocks_site = 'site_main_menu,admin,course_list:course_summary,calendar_month'; | |
3eecaaf4 | 168 | // $CFG->defaultblocks_social = 'participants,search_forums,calendar_month,calendar_upcoming,social_activities,recent_activity,admin,course_list'; |
169 | // $CFG->defaultblocks_topics = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity'; | |
170 | // $CFG->defaultblocks_weeks = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity'; | |
171 | // | |
5fd1a5d8 | 172 | // These blocks are used when no other default setting is found. |
173 | // $CFG->defaultblocks = 'participants,activity_modules,search_forums,admin,course_list:news_items,calendar_upcoming,recent_activity'; | |
3eecaaf4 | 174 | // |
5afbd0e7 | 175 | // The blocks in this list will be protected from deletion, and this is primarily |
176 | // used to protect the navigation and settings blocks which can be very hard to | |
177 | // get back if accidentally delete. | |
178 | // $CFG->undeletableblocktypes = 'global_navigation_tree,settings_navigation_tree'; | |
179 | // | |
86b5ea0f | 180 | // You can specify a different class to be created for the $PAGE global, and to |
181 | // compute which blocks appear on each page. However, I cannot think of any good | |
182 | // reason why you would need to change that. It just felt wrong to hard-code the | |
183 | // the class name. You are stronly advised not to use these to settings unless | |
184 | // you are absolutely sure you know what you are doing. | |
185 | // $CFG->moodlepageclass = 'moodle_page'; | |
186 | // $CFG->blockmanagerclass = 'block_manager'; | |
c81c6d0e | 187 | // |
6b29ba60 | 188 | // Seconds for files to remain in caches. Decrease this if you are worried |
189 | // about students being served outdated versions of uploaded files. | |
e55b73fd | 190 | // $CFG->filelifetime = 86400; |
88fea1ca | 191 | // |
192 | // This setting will prevent the 'My Courses' page being displayed when a student | |
193 | // logs in. The site front page will always show the same (logged-out) view. | |
e55b73fd | 194 | // $CFG->disablemycourses = true; |
c57e9015 | 195 | // |
f1064cca | 196 | // Enable this option if you need fully working default frontpage role, |
197 | // please note it might cause serious memory and performance issues, | |
198 | // also there should not be any negative capabilities in default | |
199 | // frontpage role (MDL-19039). | |
200 | // $CFG->fullusersbycapabilityonfrontpage = true; | |
201 | // | |
c57e9015 | 202 | // If this setting is set to true, then Moodle will track the IP of the |
203 | // current user to make sure it hasn't changed during a session. This | |
204 | // will prevent the possibility of sessions being hijacked via XSS, but it | |
366dfa60 | 205 | // may break things for users coming using proxies that change all the time, |
206 | // like AOL. | |
207 | // $CFG->tracksessionip = true; | |
bb64b51a | 208 | // |
209 | // | |
210 | // The following lines are for handling email bounces. | |
5fd1a5d8 | 211 | // $CFG->handlebounces = true; |
212 | // $CFG->minbounces = 10; | |
213 | // $CFG->bounceratio = .20; | |
bb64b51a | 214 | // The next lines are needed both for bounce handling and any other email to module processing. |
215 | // mailprefix must be EXACTLY four characters. | |
c57e9015 | 216 | // Uncomment and customise this block for Postfix |
5fd1a5d8 | 217 | // $CFG->mailprefix = 'mdl+'; // + is the separator for Exim and Postfix. |
c57e9015 | 218 | // $CFG->mailprefix = 'mdl-'; // - is the separator for qmail |
5fd1a5d8 | 219 | // $CFG->maildomain = 'youremaildomain.com'; |
f93426cf | 220 | // |
11e7b506 | 221 | // Enable when setting up advanced reverse proxy load balancing configurations. |
222 | // $CFG->reverseproxy = true; | |
223 | // | |
224 | // Enable when using external SSL appliance for performance reasons. | |
225 | // Please note that site may be accessible via https: or https:, but not both! | |
226 | // $CFG->sslproxy = true; | |
227 | // | |
c57e9015 | 228 | // This setting will cause the userdate() function not to fix %d in |
1ac7ee24 | 229 | // date strings, and just let them show with a zero prefix. |
230 | // $CFG->nofixday = true; | |
ce5e431b | 231 | // |
232 | // This setting will make some graphs (eg user logs) use lines instead of bars | |
233 | // $CFG->preferlinegraphs = true; | |
9d5ef892 | 234 | // |
18259d4f | 235 | // Enabling this will allow custom scripts to replace existing moodle scripts. |
9677eb79 | 236 | // For example: if $CFG->customscripts/course/view.php exists then |
18259d4f | 237 | // it will be used instead of $CFG->wwwroot/course/view.php |
238 | // At present this will only work for files that include config.php and are called | |
239 | // as part of the url (index.php is implied). | |
240 | // Some examples are: | |
241 | // http://my.moodle.site/course/view.php | |
242 | // http://my.moodle.site/index.php | |
243 | // http://my.moodle.site/admin (index.php implied) | |
244 | // Custom scripts should not include config.php | |
245 | // Warning: Replacing standard moodle scripts may pose security risks and/or may not | |
246 | // be compatible with upgrades. Use this option only if you are aware of the risks | |
c57e9015 | 247 | // involved. |
9677eb79 | 248 | // Specify the full directory path to the custom scripts |
249 | // $CFG->customscripts = '/home/example/customscripts'; | |
18259d4f | 250 | // |
c57e9015 | 251 | // Performance profiling |
252 | // | |
853df85e | 253 | // If you set Debug to "Yes" in the Configuration->Variables page some |
254 | // performance profiling data will show up on your footer (in default theme). | |
255 | // With these settings you get more granular control over the capture | |
256 | // and printout of the data | |
257 | // | |
258 | // Capture performance profiling data | |
259 | // define('MDL_PERF' , true); | |
260 | // | |
261 | // Capture additional data from DB | |
262 | // define('MDL_PERFDB' , true); | |
263 | // | |
264 | // Print to log (for passive profiling of production servers) | |
265 | // define('MDL_PERFTOLOG' , true); | |
266 | // | |
267 | // Print to footer (works with the default theme) | |
268 | // define('MDL_PERFTOFOOT', true); | |
269 | // | |
4c202228 | 270 | // Force displayed usernames |
c57e9015 | 271 | // A little hack to anonymise user names for all students. If you set these |
4c202228 | 272 | // then all non-teachers will always see these for every person. |
273 | // $CFG->forcefirstname = 'Bruce'; | |
274 | // $CFG->forcelastname = 'Simpson'; | |
acd2279e | 275 | // |
276 | // The following setting will turn SQL Error logging on. This will output an | |
277 | // entry in apache error log indicating the position of the error and the statement | |
278 | // called. This option will action disregarding error_reporting setting. | |
279 | // $CFG->dblogerror = true; | |
5c5c16bb | 280 | // |
13534ef7 ML |
281 | // The following setting will log every database query to a table called adodb_logsql. |
282 | // Use this setting on a development server only, the table grows quickly! | |
283 | // $CFG->logsql = true; | |
284 | // | |
5c5c16bb | 285 | // The following setting will turn on username logging into Apache log. For full details regarding setting |
286 | // up of this function please refer to the install section of the document. | |
287 | // $CFG->apacheloguser = 0; // Turn this feature off. Default value. | |
288 | // $CFG->apacheloguser = 1; // Log user id. | |
289 | // $CFG->apacheloguser = 2; // Log full name in cleaned format. ie, Darth Vader will be displayed as darth_vader. | |
c57e9015 | 290 | // $CFG->apacheloguser = 3; // Log username. |
bd10cc11 | 291 | // To get the values logged in Apache's log, add to your httpd.conf |
292 | // the following statements. In the General part put: | |
220776ac | 293 | // LogFormat "%h %l %{MOODLEUSER}n %t \"%r\" %s %b \"%{Referer}i\" \"%{User-Agent}i\"" moodleformat |
bd10cc11 | 294 | // And in the part specific to your Moodle install / virtualhost: |
295 | // CustomLog "/your/path/to/log" moodleformat | |
296 | // CAUTION: Use of this option will expose usernames in the Apache log, | |
297 | // If you are going to publish your log, or the output of your web stats analyzer | |
298 | // this will weaken the security of your website. | |
c57e9015 | 299 | // |
300 | // Email database connection errors to someone. If Moodle cannot connect to the | |
880a6f6b | 301 | // database, then email this address with a notice. |
302 | // | |
6b25f553 | 303 | // $CFG->emailconnectionerrorsto = 'your@emailaddress.com'; |
c57e9015 | 304 | // |
243a4e75 | 305 | // NOTE: if you are using custompix in your theme, see /fixpix.php. |
c57e9015 | 306 | // |
6f93e96c | 307 | // Set the priority of themes from highest to lowest. This is useful (for |
308 | // example) in sites where the user theme should override all other theme | |
309 | // settings for accessibility reasons. You can also disable types of themes | |
b7009474 | 310 | // (other than site) by removing them from the array. The default setting is: |
311 | // $CFG->themeorder = array('course', 'category', 'session', 'user', 'site'); | |
6f93e96c | 312 | // NOTE: course, category, session, user themes still require the |
313 | // respective settings to be enabled | |
314 | // | |
84ebf08d | 315 | |
316 | //========================================================================= | |
317 | // 8. SETTINGS FOR DEVELOPMENT SERVERS - not intended for production use!!! | |
318 | //========================================================================= | |
f4fa5a63 | 319 | // |
1045a007 | 320 | // When working with production data on test servers, no emails should ever be send to real users |
321 | // $CFG->noemailever = true; | |
322 | // | |
84ebf08d | 323 | // Specify prefix for fake unit test tables. If not specified only tests |
1045a007 | 324 | // that do not need fake tables will be executed. |
84ebf08d | 325 | // $CFG->unittestprefix = 'tst_'; |
326 | // | |
327 | // special magic evil developer only wanting to edit the xmldb files manually | |
328 | // AND don't use the XMLDBEditor nor the prev/next stuff at all (Mahara and others) | |
329 | // Uncomment these if you're lazy like Penny | |
330 | // $CFG->xmldbdisablecommentchecking = true; | |
331 | // $CFG->xmldbdisablenextprevchecking = true; | |
332 | // | |
1045a007 | 333 | // Special magic - evil developer only wanting to edit xmldb files manually |
84ebf08d | 334 | // AND allowing the XMLDBEditor to recostruct the prev/next elements every |
335 | // time one file is loaded and saved (Moodle). | |
336 | // Uncomment this if you're lazy like Petr | |
337 | // $CFG->xmldbreconstructprevnext = true; | |
338 | // | |
1045a007 | 339 | // |
340 | // Since 2.0 sql queries are not shown during upgrade by default. | |
341 | // Please note that this setting may produce very long upgrade page on large sites. | |
342 | // $CFG->upgradeshowsql = true; | |
343 | ||
344 | ||
84ebf08d | 345 | |
6077020a | 346 | //========================================================================= |
347 | // ALL DONE! To continue installation, visit your main page with a browser | |
348 | //========================================================================= | |
c781942f | 349 | if ($CFG->wwwroot == 'http://example.com/moodle') { |
350 | echo "<p>Error detected in configuration file</p>"; | |
351 | echo "<p>Your server address can not be: \$CFG->wwwroot = 'http://example.com/moodle';</p>"; | |
352 | die; | |
353 | } | |
354 | ||
6077020a | 355 | if (file_exists("$CFG->dirroot/lib/setup.php")) { // Do not edit |
356 | include_once("$CFG->dirroot/lib/setup.php"); | |
357 | } else { | |
358 | if ($CFG->dirroot == dirname(__FILE__)) { | |
359 | echo "<p>Could not find this file: $CFG->dirroot/lib/setup.php</p>"; | |
360 | echo "<p>Are you sure all your files have been uploaded?</p>"; | |
361 | } else { | |
362 | echo "<p>Error detected in config.php</p>"; | |
363 | echo "<p>Error in: \$CFG->dirroot = '$CFG->dirroot';</p>"; | |
364 | echo "<p>Try this: \$CFG->dirroot = '".dirname(__FILE__)."';</p>"; | |
365 | } | |
366 | die; | |
367 | } | |
fa4556c5 | 368 | // There is no php closing tag in this file, |
369 | // it is intentional because it prevents trailing whitespace problems! |