Note: You are currently viewing documentation for Moodle 1.9. Up-to-date documentation for the latest stable version is available here: Installing Moodle.

Talk:Installing Moodle: Difference between revisions

From MoodleDocs
Line 126: Line 126:


Notes on installing on FreeBSD 7.0-RELEASE-p5.
Notes on installing on FreeBSD 7.0-RELEASE-p5.
After the base install, use freebsd-update to install security patches, then update the ports collection using portmaster and portaudit.  The book, Building A Server With FreeBSD 7, by Bryan J. Hong may help to make sure you have a solid FreeBSD server setup.
After the base install, use freebsd-update to install security patches, then update the ports collection using portmaster and portaudit.  The book, Building A Server With FreeBSD 7, by Bryan J. Hong may help ensure a solid (and repeatedly installable) FreeBSD server setup.


Here are the installed software versions on my server:
Here are the installed versions of the main software:


httpd -v
*httpd -vServer version: Apache/2.2.9 (FreeBSD)
Server version: Apache/2.2.9 (FreeBSD)
*mysql> statusServer version: 5.0.67-log FreeBSD port: mysql-server-5.0.67_1
 
*Moodle 1.9.3+
mysql> status
*PHP 5.2.6
Server version: 5.0.67-log FreeBSD port: mysql-server-5.0.67_1
 
Moodle 1.9.3+
 
PHP 5.2.6


While attempting the Moodle installation, I encountered a number of PHP errors along the way.  To make the installation go more smoothly, install these ports ahead of time:
While attempting the Moodle installation, I encountered a number of PHP errors along the way.  To make the installation go more smoothly, install these ports ahead of time:


/usr/ports/devel/php5-pcre
*/usr/ports/devel/php5-pcre
/usr/ports/textproc/php5-dom
*/usr/ports/textproc/php5-dom
/usr/ports/textproc/php5-xml
*/usr/ports/textproc/php5-xml
/usr/ports/textproc/php5-xmlreader
*/usr/ports/textproc/php5-xmlreader
/usr/ports/textproc/php5-xmlwriter
*/usr/ports/textproc/php5-xmlwriter
/usr/ports/textproc/php5-ctype
*/usr/ports/textproc/php5-ctype
/usr/ports/net/php5-xmlrpc
*/usr/ports/net/php5-xmlrpc




For completeness, here's what pkg_info shows:
For completeness, here's what pkg_info shows (many of these ports were installed automatically while installing the above ports):


apache-2.2.9_5      Version 2.2.x of Apache web server with prefork MPM.
*apache-2.2.9_5      Version 2.2.x of Apache web server with prefork MPM.
autoconf-2.62      Automatically configure source code on many Un*x platforms  
*autoconf-2.62      Automatically configure source code on many Un*x platforms  
autoconf-wrapper-20071109 Wrapper script for GNU autoconf
*autoconf-wrapper-20071109 Wrapper script for GNU autoconf
automake-1.9.6_3    GNU Standards-compliant Makefile generator (1.9)
*automake-1.9.6_3    GNU Standards-compliant Makefile generator (1.9)
automake-wrapper-20071109 Wrapper script for GNU automake
*automake-wrapper-20071109 Wrapper script for GNU automake
bigreqsproto-1.0.2  BigReqs extension headers
*bigreqsproto-1.0.2  BigReqs extension headers*
curl-7.18.0        Non-interactive tool to get files from FTP, GOPHER, HTTP(S)
*curl-7.18.0        Non-interactive tool to get files from FTP, GOPHER, HTTP(S)
expat-2.0.1        XML 1.0 parser written in C
*expat-2.0.1        XML 1.0 parser written in C
freetype2-2.3.7    A free and portable TrueType font rendering engine
*freetype2-2.3.7    A free and portable TrueType font rendering engine
gettext-0.17_1      GNU gettext package
*gettext-0.17_1      GNU gettext package
gmake-3.81_3        GNU version of 'make' utility
*gmake-3.81_3        GNU version of 'make' utility
help2man-1.36.4_2  Automatically generating simple manual pages from program o
*help2man-1.36.4_2  Automatically generating simple manual pages from program o
inputproto-1.4.2.1  Input extension headers
*inputproto-1.4.2.1  Input extension headers
jpeg-6b_7          IJG's jpeg compression utilities
*jpeg-6b_7          IJG's jpeg compression utilities
kbproto-1.0.3      KB extension headers
*kbproto-1.0.3      KB extension headers
libICE-1.0.4_1,1    Inter Client Exchange library for X11
*libICE-1.0.4_1,1    Inter Client Exchange library for X11
libSM-1.0.3_1,1    Session Management library for X11
*libSM-1.0.3_1,1    Session Management library for X11
libX11-1.1.3_1,1    X11 library
*libX11-1.1.3_1,1    X11 library
libXau-1.0.3_2      Authentication Protocol library for X11
*libXau-1.0.3_2      Authentication Protocol library for X11
libXaw-1.0.4_1,1    X Athena Widgets library
*libXaw-1.0.4_1,1    X Athena Widgets library
libXdmcp-1.0.2_1    X Display Manager Control Protocol library
*libXdmcp-1.0.2_1    X Display Manager Control Protocol library
libXext-1.0.3,1    X11 Extension library
*libXext-1.0.3,1    X11 Extension library
libXmu-1.0.3,1      X Miscellaneous Utilities libraries
*libXmu-1.0.3,1      X Miscellaneous Utilities libraries
libXp-1.0.0,1      X print library
*libXp-1.0.0,1      X print library
libXpm-3.5.7        X Pixmap library
*libXpm-3.5.7        X Pixmap library
libXt-1.0.5_1      X Toolkit library
*libXt-1.0.5_1      X Toolkit library
libiconv-1.11_1    A character set conversion library
*libiconv-1.11_1    A character set conversion library
libtool-1.5.26      Generic shared library support script
*libtool-1.5.26      Generic shared library support script
libxml2-2.6.32_1    XML parser library for GNOME
*libxml2-2.6.32_1    XML parser library for GNOME
lynx-2.8.6.5_4,1    A non-graphical, text-based World-Wide Web client
*lynx-2.8.6.5_4,1    A non-graphical, text-based World-Wide Web client
m4-1.4.11,1        GNU m4
*m4-1.4.11,1        GNU m4
mysql-client-5.0.67_1 Multithreaded SQL database (client)
*mysql-client-5.0.67_1 Multithreaded SQL database (client)
mysql-server-5.0.67_1 Multithreaded SQL database (server)
*mysql-server-5.0.67_1 Multithreaded SQL database (server)
ntp-4.2.4p4        The Network Time Protocol Distribution
*ntp-4.2.4p4        The Network Time Protocol Distribution
openssh-portable-overwrite-base-5.0.p1,1 The portable version of OpenBSD's OpenSSH
*openssh-portable-overwrite-base-5.0.p1,1 The portable version of OpenBSD's OpenSSH
openssl-0.9.8i      SSL and crypto library
*openssl-0.9.8i      SSL and crypto library
p5-gettext-1.05_2  Message handling functions
*p5-gettext-1.05_2  Message handling functions
perl-5.8.8_1        Practical Extraction and Report Language
*perl-5.8.8_1        Practical Extraction and Report Language
php5-5.2.6_2        PHP Scripting Language
*php5-5.2.6_2        PHP Scripting Language
php5-ctype-5.2.6_2  The ctype shared extension for php
*php5-ctype-5.2.6_2  The ctype shared extension for php
php5-curl-5.2.6_2  The curl shared extension for php
*php5-curl-5.2.6_2  The curl shared extension for php
php5-dom-5.2.6_2    The dom shared extension for php
*php5-dom-5.2.6_2    The dom shared extension for php
php5-gd-5.2.6_2    The gd shared extension for php
*php5-gd-5.2.6_2    The gd shared extension for php
php5-iconv-5.2.6_2  The iconv shared extension for php
*php5-iconv-5.2.6_2  The iconv shared extension for php
php5-mbstring-5.2.6_2 The mbstring shared extension for php
*php5-mbstring-5.2.6_2 The mbstring shared extension for php
php5-mysql-5.2.6_2  The mysql shared extension for php
*php5-mysql-5.2.6_2  The mysql shared extension for php
php5-openssl-5.2.6_2 The openssl shared extension for php
*php5-openssl-5.2.6_2 The openssl shared extension for php
php5-pcre-5.2.6_2  The pcre shared extension for php
*php5-pcre-5.2.6_2  The pcre shared extension for php
php5-session-5.2.6_2 The session shared extension for php
*php5-session-5.2.6_2 The session shared extension for php
php5-simplexml-5.2.6_2 The simplexml shared extension for php
*php5-simplexml-5.2.6_2 The simplexml shared extension for php
php5-spl-5.2.6_2    The spl shared extension for php
*php5-spl-5.2.6_2    The spl shared extension for php
php5-tokenizer-5.2.6_2 The tokenizer shared extension for php
*php5-tokenizer-5.2.6_2 The tokenizer shared extension for php
php5-xml-5.2.6_2    The xml shared extension for php
*php5-xml-5.2.6_2    The xml shared extension for php
php5-xmlreader-5.2.6_2 The xmlreader shared extension for php
*php5-xmlreader-5.2.6_2 The xmlreader shared extension for php
php5-xmlrpc-5.2.6_2 The xmlrpc shared extension for php
*php5-xmlrpc-5.2.6_2 The xmlrpc shared extension for php
php5-xmlwriter-5.2.6_2 The xmlwriter shared extension for php
*php5-xmlwriter-5.2.6_2 The xmlwriter shared extension for php
pkg-config-0.23_1  A utility to retrieve information about installed libraries
*pkg-config-0.23_1  A utility to retrieve information about installed libraries
png-1.2.32          Library for manipulating PNG images
*png-1.2.32          Library for manipulating PNG images
portaudit-0.5.12    Checks installed ports against a list of security vulnerabi
*portaudit-0.5.12    Checks installed ports against a list of security vulnerabi
portmaster-2.6      Manage your ports without external databases or languages
*portmaster-2.6      Manage your ports without external databases or languages
printproto-1.0.3    Print extension headers
*printproto-1.0.3    Print extension headers
t1lib-5.1.2,1      A Type 1 Rasterizer Library for UNIX/X11
*t1lib-5.1.2,1      A Type 1 Rasterizer Library for UNIX/X11
xcmiscproto-1.1.2  XCMisc extension headers
*xcmiscproto-1.1.2  XCMisc extension headers
xextproto-7.0.2    XExt extension headers
*xextproto-7.0.2    XExt extension headers
xf86bigfontproto-1.1.2 XFree86-Bigfont extension headers
*xf86bigfontproto-1.1.2 XFree86-Bigfont extension headers
xproto-7.0.10_1    X11 protocol headers
*xproto-7.0.10_1    X11 protocol headers
xtrans-1.0.4        Abstract network code for X
*xtrans-1.0.4        Abstract network code for X
--[[User:Paul Takemura|Paul Takemura]] 20:00, 1 November 2008 (CDT)
--[[User:Paul Takemura|Paul Takemura]] 20:00, 1 November 2008 (CDT)

Revision as of 01:26, 2 November 2008

Additional requirements

Should the installation page mention some of the more detailed PHP requirements also, like GD library and the FreeType 2 library on Linux/Unix boxes to be able to look at the dynamic graphs that the logs pages make? Samuli Karevaara 13 January 2006 11:10 (WST)

Yes, good idea - please contribute :-) Helen Foster 13 January 2006 11:35 (WST)

Please add to the "Requirements" section of the Installation Instructions something such as:

During Installation of Moodle the PHP Memory Limit should be set to 16M. Many commercial hosting providers have this set to 8M only. To find out your PHP Memory Limit use PHP Info. You may have to ask your service provider to increase the PHP Memory Limit before you can complete the installation.

Thanks for your help.


maybe this could be a good place to mention something for BUG 4937 "some SCORM objects contain HTC files which are not automatically supported by APACHE, if you are using APACHE and make use of large numbers of SCORM objects then you may want to add the following MIME Type.... etc.... see here for details: http://moodle.org/bugs/bug.php?op=show&bugid=4937&pos=24 --Dan Marsden 13:57, 8 June 2006 (WST)


confused about

1) Reload the grant tables using the mysqladmin program:

#mysqladmin -u root -p reload
Enter password:
'requires reload priviledge'

2)And some example command lines for PostgreSQL:

  # su - postgres
  > psql -c "create user moodleuser createdb;" template1
...

What's the PostgreSQL about?

Dennis German 20:13, 28 January 2008 (CST)

It's another database server you can use with Moodle instead of MySQL. Richard Enison 02:39, 6 August 2008 (CDT)

Some things I came across

First-time user of Moodle, so I'm commenting here rather than editing, just to be on the safe side :-) -- two things have caught my attention:

  • "# mysqladmin -u root -p reload" -- this step is unnecessary. The reload command is only for when you fiddle directly with the mysql permission tables, but not needed when you do a GRANT.
  • "Remember by default, mysql won't accept moodle data directories created under ROOT" -- not sure what is meant by this sentence? The data directory in question is for storing files, not db data, right?

--Carsten Pedersen 18:14, 27 January 2007 (CST)

Right. I think it means directories created and owned by the root (o/s) user. --Richard Enison 04:28, 23 November 2007 (CST) But you've got a point. I don't know what that has to do with mysql either. --Richard Enison 02:42, 6 August 2008 (CDT)

Ref:PHP and MySQL

Should there be special comment on the use of "--with-mysql" and "--with-mysqli" PHP configure options and outcomes (if any) for Moodle functions?

--Paul Trudt 13:12, 7 August 2007 (CST)

Re: "PHP Extensions and Libraries": Some guidance in how to enable or install those recommendations in the php.ini file would help me, so I imagine it would help others too. I'm in the default php5 php.ini file right now, and it says,

`[mbstring]

language for internal character representation.
mbstring.language = Japanese`

--but I don't know what to do with that to make it what Moodle needs.

Otherwise, smooth sailing so far. :) --Clay Burell 07:01, 28 July 2008 (CDT)

Structure of moodle directory

Hi there,

I'm also new, so I try this way rather than editing directly. The "Structure of moodle directory" lists the directory "doc" which didn't come with the current 1.7.1+ version I downloaded.

Sandra Reitz 04:17, 16 February 2007 (CST)

Installing on Netware

Under system requirements this page indicates that it is possible to install on Netware 6.5. The latest versions of PHP for Netware appear to be 4.2.3 and 5.0.5, while Moodle 1.8 requires 4.3.0 or 5.1.0. This means that Moodle is no longer supported on the Netware platfrom and the documentation should indicate this.

- Looking at http://forge.novell.com/modules/xfcontent/downloads.php/php/GCC%20Built%20Daily%20Releases there appears to be a download for php 5.1 (built in 2006-02, so it's old). I don't have a novell install anymore, so please can you confirm this. --Ken Wilson 06:21, 7 May 2007 (CDT)

Using a .htaccess file for webserver and PHP settings

under the above section are .htaccess settings such as

php_flag magic_quotes_gpc 1

As I correct in saying these would not work if running php as a .cgi? If so, it needs saying.

Regarding the "Run the Install" job section. At least in Windows installs, you need to edit the config.php-dist file (which has template specs for various file loscations) and insert all the information about your install - root directory, database name and credentials, and data directory location. Then you can run the Install.php job and step through the process.

Missing documentation for Multiple Servers Installation

I think that section 5.5 creating the data directory should mention whether it is possible to define a folder which is located on a remote server.

Is it possible? – I try to do that by mapping a drive on a Windows Server to another server. Will update you on the results.

Also, I agree that the title of the section is misleading: Data directory implies Database. Files Directory or Uploads directory, are better options, to my humble opinion. טל בודק 04:07, 1 June 2008 (CDT)

I agree with you about the section name change. The Window's complete install packages call this folder by default Moodledata. I would suggest that be in the section name as well. Maybe "Moodledata and uploaded files directories" would help the new user. Old pros will get it right away :)--Chris collman 06:13, 11 June 2008 (CDT)

Missing documentation for pear

Pear is included in Moodle /moodle/lib/pear/ but it not called directly.

for e.g. in file /moodle/lib/formslib.php

require_once 'HTML/QuickForm.php';

For this to work either all these pear packages must be installed on server or /moodle/lib/pear/ should be included in php include_path.

Should this be mentioned in documentation or developers might want to upgrade code in a way that will eliminate this problem.

require_once $CFG->libdir.'pear/HTML/QuickForm.php'; (Don't know how good or bad it may be)

New Installing from Command Line section

What's the deal with the Installing Moodle from the Command Line section of this page? It was added August 3, 2008 and doesn't seem to apply to any version of Moodle from 1.8.3 to 1.9.2+. See this post. --Richard Enison 20:22, 13 August 2008 (CDT)

magic_quotes_gpc on Windows

Under the Requirements : Software section it is stated that magic_quotes_gpc should be ON. When I turn it ON under Windows Server 2003 and IIS 6 I encounter the 'apostrophes get slashed' problem like the one described in http://moodle.org/mod/forum/discuss.php?d=102156.

Setting magic_quotes_gpc to off resolves the problem and apostropes don't get slashed. Should Installing Moodle be updated to say that Windows users should set magic_quotes_gpc to off? I don't know what the implications will be for *nix users though.

Additionally, according to http://php.net/magic_quotes, Magic Quotes has been deprecated and removed as of PHP 6 which strengthens my argument for switching magic_quotes_gpc off. Am I correct?

Installing on FreeBSD 7.0

Notes on installing on FreeBSD 7.0-RELEASE-p5. After the base install, use freebsd-update to install security patches, then update the ports collection using portmaster and portaudit. The book, Building A Server With FreeBSD 7, by Bryan J. Hong may help ensure a solid (and repeatedly installable) FreeBSD server setup.

Here are the installed versions of the main software:

  • httpd -v: Server version: Apache/2.2.9 (FreeBSD)
  • mysql> status: Server version: 5.0.67-log FreeBSD port: mysql-server-5.0.67_1
  • Moodle 1.9.3+
  • PHP 5.2.6

While attempting the Moodle installation, I encountered a number of PHP errors along the way. To make the installation go more smoothly, install these ports ahead of time:

  • /usr/ports/devel/php5-pcre
  • /usr/ports/textproc/php5-dom
  • /usr/ports/textproc/php5-xml
  • /usr/ports/textproc/php5-xmlreader
  • /usr/ports/textproc/php5-xmlwriter
  • /usr/ports/textproc/php5-ctype
  • /usr/ports/net/php5-xmlrpc


For completeness, here's what pkg_info shows (many of these ports were installed automatically while installing the above ports):

  • apache-2.2.9_5 Version 2.2.x of Apache web server with prefork MPM.
  • autoconf-2.62 Automatically configure source code on many Un*x platforms
  • autoconf-wrapper-20071109 Wrapper script for GNU autoconf
  • automake-1.9.6_3 GNU Standards-compliant Makefile generator (1.9)
  • automake-wrapper-20071109 Wrapper script for GNU automake
  • bigreqsproto-1.0.2 BigReqs extension headers*
  • curl-7.18.0 Non-interactive tool to get files from FTP, GOPHER, HTTP(S)
  • expat-2.0.1 XML 1.0 parser written in C
  • freetype2-2.3.7 A free and portable TrueType font rendering engine
  • gettext-0.17_1 GNU gettext package
  • gmake-3.81_3 GNU version of 'make' utility
  • help2man-1.36.4_2 Automatically generating simple manual pages from program o
  • inputproto-1.4.2.1 Input extension headers
  • jpeg-6b_7 IJG's jpeg compression utilities
  • kbproto-1.0.3 KB extension headers
  • libICE-1.0.4_1,1 Inter Client Exchange library for X11
  • libSM-1.0.3_1,1 Session Management library for X11
  • libX11-1.1.3_1,1 X11 library
  • libXau-1.0.3_2 Authentication Protocol library for X11
  • libXaw-1.0.4_1,1 X Athena Widgets library
  • libXdmcp-1.0.2_1 X Display Manager Control Protocol library
  • libXext-1.0.3,1 X11 Extension library
  • libXmu-1.0.3,1 X Miscellaneous Utilities libraries
  • libXp-1.0.0,1 X print library
  • libXpm-3.5.7 X Pixmap library
  • libXt-1.0.5_1 X Toolkit library
  • libiconv-1.11_1 A character set conversion library
  • libtool-1.5.26 Generic shared library support script
  • libxml2-2.6.32_1 XML parser library for GNOME
  • lynx-2.8.6.5_4,1 A non-graphical, text-based World-Wide Web client
  • m4-1.4.11,1 GNU m4
  • mysql-client-5.0.67_1 Multithreaded SQL database (client)
  • mysql-server-5.0.67_1 Multithreaded SQL database (server)
  • ntp-4.2.4p4 The Network Time Protocol Distribution
  • openssh-portable-overwrite-base-5.0.p1,1 The portable version of OpenBSD's OpenSSH
  • openssl-0.9.8i SSL and crypto library
  • p5-gettext-1.05_2 Message handling functions
  • perl-5.8.8_1 Practical Extraction and Report Language
  • php5-5.2.6_2 PHP Scripting Language
  • php5-ctype-5.2.6_2 The ctype shared extension for php
  • php5-curl-5.2.6_2 The curl shared extension for php
  • php5-dom-5.2.6_2 The dom shared extension for php
  • php5-gd-5.2.6_2 The gd shared extension for php
  • php5-iconv-5.2.6_2 The iconv shared extension for php
  • php5-mbstring-5.2.6_2 The mbstring shared extension for php
  • php5-mysql-5.2.6_2 The mysql shared extension for php
  • php5-openssl-5.2.6_2 The openssl shared extension for php
  • php5-pcre-5.2.6_2 The pcre shared extension for php
  • php5-session-5.2.6_2 The session shared extension for php
  • php5-simplexml-5.2.6_2 The simplexml shared extension for php
  • php5-spl-5.2.6_2 The spl shared extension for php
  • php5-tokenizer-5.2.6_2 The tokenizer shared extension for php
  • php5-xml-5.2.6_2 The xml shared extension for php
  • php5-xmlreader-5.2.6_2 The xmlreader shared extension for php
  • php5-xmlrpc-5.2.6_2 The xmlrpc shared extension for php
  • php5-xmlwriter-5.2.6_2 The xmlwriter shared extension for php
  • pkg-config-0.23_1 A utility to retrieve information about installed libraries
  • png-1.2.32 Library for manipulating PNG images
  • portaudit-0.5.12 Checks installed ports against a list of security vulnerabi
  • portmaster-2.6 Manage your ports without external databases or languages
  • printproto-1.0.3 Print extension headers
  • t1lib-5.1.2,1 A Type 1 Rasterizer Library for UNIX/X11
  • xcmiscproto-1.1.2 XCMisc extension headers
  • xextproto-7.0.2 XExt extension headers
  • xf86bigfontproto-1.1.2 XFree86-Bigfont extension headers
  • xproto-7.0.10_1 X11 protocol headers
  • xtrans-1.0.4 Abstract network code for X

--Paul Takemura 20:00, 1 November 2008 (CDT)