<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ca">
	<id>https://docs.moodle.org/2x/ca/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kcharvey</id>
	<title>MoodleDocs - Contribucions de l&amp;#039;usuari [ca]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/2x/ca/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Kcharvey"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/2x/ca/Especial:Contribucions/Kcharvey"/>
	<updated>2026-05-25T01:06:04Z</updated>
	<subtitle>Contribucions de l&amp;#039;usuari</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/2x/ca/index.php?title=Apache&amp;diff=28484</id>
		<title>Apache</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/2x/ca/index.php?title=Apache&amp;diff=28484"/>
		<updated>2007-11-06T06:49:37Z</updated>

		<summary type="html">&lt;p&gt;Kcharvey: /* Performance */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;When most people refer to &#039;&#039;&#039;Apache&#039;&#039;&#039; they are talking about the &amp;quot;Apache HTTP Server Project&amp;quot;. In fact Apache is really the &amp;quot;Apache Software Foundation&amp;quot; which hosts a long list of projects of which the HTTP server is just one, albeit the best known.&lt;br /&gt;
&lt;br /&gt;
The Apache HTTP Server enables web pages to be published on the internet (or an intranet or even on a single test machine). The [[PHP]] scripting language, in which Moodle is developed, is tightly integrated with the Apache HTTP Server. A web server is a required component of a Moodle installation. There are two distinct developments of the Apache HTTP Server, version 1 and version 2. Although version 2 should have replaced version 1, the architectures are so different that they both continue to be supported. Either are fully supported by PHP and Moodle.&lt;br /&gt;
&lt;br /&gt;
The Apache HTTP Server Project describes itself thus:&lt;br /&gt;
&lt;br /&gt;
&amp;quot;The Apache HTTP Server Project is an effort to develop and maintain an open-source HTTP server for modern operating systems including UNIX and Windows NT. The goal of this project is to provide a secure, efficient and extensible server that provides HTTP services in sync with the current HTTP standards.&lt;br /&gt;
&lt;br /&gt;
Apache has been the most popular web server on the Internet since April 1996. The November 2005 Netcraft Web Server Survey found that more than 70% of the web sites on the Internet are using Apache, thus making it more widely used than all other web servers combined.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Installing Apache ==&lt;br /&gt;
&lt;br /&gt;
Usually Apache is installed alongside PHP and [[MySQL]] in a combination known as AMP, see [[Installing AMP]] for details.&lt;br /&gt;
&lt;br /&gt;
Debian/Ubuntu:&lt;br /&gt;
 apt-get install apache2&lt;br /&gt;
&lt;br /&gt;
==Performance==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Caching&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Apache can be tuned to make pages load faster by specifying how the browser should cache the various page elements. How to do this varies slightly between OSes but there are two basic steps&lt;br /&gt;
&lt;br /&gt;
# Install and enable mod_expires - refer to documentation or man pages&lt;br /&gt;
# Add this code to the virtual server config file within the section for the root directory (or within the .htaccess file if AllowOverrides is On):&lt;br /&gt;
 &amp;lt;IfModule mod_expires.c&amp;gt;&lt;br /&gt;
  ExpiresActive On&lt;br /&gt;
  ExpiresDefault &amp;quot;access plus 1 seconds&amp;quot;&lt;br /&gt;
  ExpiresByType text/html &amp;quot;access plus 1 seconds&amp;quot;&lt;br /&gt;
  ExpiresByType image/gif &amp;quot;access plus 120 minutes&amp;quot;&lt;br /&gt;
  ExpiresByType image/jpeg &amp;quot;access plus 120 minutes&amp;quot;&lt;br /&gt;
  ExpiresByType image/png &amp;quot;access plus 120 minutes&amp;quot;&lt;br /&gt;
  ExpiresByType text/css &amp;quot;access plus 60 minutes&amp;quot;&lt;br /&gt;
  ExpiresByType text/javascript &amp;quot;access plus 60 minutes&amp;quot;&lt;br /&gt;
  ExpiresByType application/x-javascript &amp;quot;access plus 60 minutes&amp;quot;&lt;br /&gt;
  ExpiresByType text/xml &amp;quot;access plus 1 seconds&amp;quot;&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect is to make everything stay in the cache except HTML and XML, which change dynamically. It&#039;s possible to gain a several hundred percent decrease in load times this way&lt;br /&gt;
&lt;br /&gt;
More info: [http://www.metaskills.net/blog/heuristics/sysadmin/how-to-control-browser-caching-with-apache-2 www.metaskills.net]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Servers&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Apache serves webpages by spawning new child processes (smaller sub-programs) to deal with each connection. The number of these that you allow to run and to be kept in reserve has a big impact on how fast your server will run. The risk (especially on a server with a small amount of memory, such as a VPS) is that the available RAM will run out and the system will end up using the far slower hard disk as swap memory instead. To prevent this, you need to tell Apache only to have a certain number. Here is a sample set of configuration directives for a VPS server with 128MB of RAM (with up to 384 burstable), which apparently works quite well (more info [http://www.agnivo.com/tech/vps-mysql-and-apache-optimization-guide-27.html here])&lt;br /&gt;
&lt;br /&gt;
Make a back up of your httpd.conf first. It’s generally found at /etc/httpd/conf/httpd.conf, then open the file with your editor e.g. &lt;br /&gt;
&lt;br /&gt;
 nano /etc/httpd/conf/httpd.conf&lt;br /&gt;
&lt;br /&gt;
Then look for these values, which may be spread about a little and change them:&lt;br /&gt;
&lt;br /&gt;
 Timeout 200&lt;br /&gt;
 KeepAlive On&lt;br /&gt;
 MaxKeepAliveRequests 200&lt;br /&gt;
 KeepAliveTimeout 3&lt;br /&gt;
 MinSpareServers 5&lt;br /&gt;
 MaxSpareServers 15&lt;br /&gt;
 StartServers 5&lt;br /&gt;
 MaxClients 20&lt;br /&gt;
 MaxRequestsPerChild 2000&lt;br /&gt;
 HostnameLookups Off&lt;br /&gt;
&lt;br /&gt;
If you find that you are running out of memory (type &lt;br /&gt;
&lt;br /&gt;
 top&lt;br /&gt;
&lt;br /&gt;
if using Linux and look at the swap figure), just lower some of the numbers. Similary, if you have extra memory, you can afford to raise them a bit. Remember to combine tuning of Apache with tuning of your database app.&lt;br /&gt;
&lt;br /&gt;
==SSL==&lt;br /&gt;
&lt;br /&gt;
If you want your website not to be hackable, you need to enable SSL so that your moodle password cannot be easily read by others as it is transmitted (as normal internet communications normally can be). There are 2 options - generate a self-signed certificate, which stops casual network sniffing, but which can ultimately be compromised with enough effort, or purchase a certificate from a vendor (about $35 per year from the cheap ones). Below are instructions for install of a self-signed certificate.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Debian and Apache2&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
1. generate a certification:&lt;br /&gt;
      apache2-ssl-certificate&lt;br /&gt;
&lt;br /&gt;
for debian etch, apache2-ssl-certificate is no longer available, use make-ssl-cert instead:&lt;br /&gt;
          make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem&lt;br /&gt;
&lt;br /&gt;
2. edit /etc/apache2/ports.conf:&lt;br /&gt;
      Listen 80&lt;br /&gt;
      Listen 443&lt;br /&gt;
3. copy /etc/apache2/sites-available/default to /etc/apache2/sites-available/default-ssl, and change /etc/apache2/sites-available/default:&lt;br /&gt;
      NameVirtualHost *:80&lt;br /&gt;
      &amp;lt;VirtualHost *:80&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
      &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and also /etc/apache2/sites-available/default-ssl:&lt;br /&gt;
      NameVirtualHost *:443&lt;br /&gt;
      &amp;lt;VirtualHost *:443&amp;gt;&lt;br /&gt;
      ...&lt;br /&gt;
              SSLEngine on&lt;br /&gt;
              SSLCertificateFile /etc/apache2/ssl/apache.pem&lt;br /&gt;
      ...&lt;br /&gt;
      &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
4. symbolic link the ssl file:&lt;br /&gt;
      a2ensite default-ssl&lt;br /&gt;
5. don&#039;t forget to symbolic link the ssl module:&lt;br /&gt;
      a2enmod ssl&lt;br /&gt;
6. restart apache and test the connection (e.g. https://localhost/):&lt;br /&gt;
      /etc/init.d/apache2 restart&lt;br /&gt;
&lt;br /&gt;
[http://edin.no-ip.com/html/?q=ssl_apache2_2_virtualhost_debian_automatically_https_forwarding reference]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [http://httpd.apache.org/ The Apache HTTP Server Project homepage]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Apache_HTTP_Server Wikipedia article on the Apache HTTP Server]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Administrator]]&lt;br /&gt;
[[Category:Developer]]&lt;/div&gt;</summary>
		<author><name>Kcharvey</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/2x/ca/index.php?title=Managing_roles&amp;diff=28458</id>
		<title>Managing roles</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/2x/ca/index.php?title=Managing_roles&amp;diff=28458"/>
		<updated>2007-11-05T13:16:49Z</updated>

		<summary type="html">&lt;p&gt;Kcharvey: /* Creating a duplicate role */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Roles}}&lt;br /&gt;
Location: &#039;&#039;Administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define roles&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The define roles page has three tabs, for managing roles, [[Allow role assignments|allowing role assignments]] and [[Allow role overrides|allowing role overrides]].&lt;br /&gt;
&lt;br /&gt;
The manage roles tab contains a list of roles on your site. The edit column contains icons for editing and deleting roles, and for moving them up or down in the list (affecting the way that roles are listed around Moodle).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Predefined roles==&lt;br /&gt;
Moodle comes with 7 predefined roles:&lt;br /&gt;
*[[Assign administrators|Administrator]]&lt;br /&gt;
*[[Course creator]]&lt;br /&gt;
*[[Teacher]]&lt;br /&gt;
*[[Teacher#Non-editing teacher| Non-editing teacher]]&lt;br /&gt;
*[[Student]]&lt;br /&gt;
*[[Guest access|Guest]]&lt;br /&gt;
*[[Authenticated user]] (from 1.8 onwards)&lt;br /&gt;
&lt;br /&gt;
==Editing a role==&lt;br /&gt;
[[Image:manage roles.png|thumb|Managing roles]]&lt;br /&gt;
To edit a role:&lt;br /&gt;
#Click on Permissions in the Site Administration block, then Define roles.&lt;br /&gt;
#Click the edit icon opposite the role you want to edit e.g. student.&lt;br /&gt;
#On the edit role page, change permissions as required.&lt;br /&gt;
#Scroll to the bottom of the page and click the &amp;quot;Save changes&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
==Adding a new role==&lt;br /&gt;
&lt;br /&gt;
To add a new role:&lt;br /&gt;
#Click on Permissions in the Site Administration block, then Define roles.&lt;br /&gt;
#Click the &amp;quot;Add a new role&amp;quot; button.&lt;br /&gt;
#On the add a new role page, give the role a name. If you need to name the role for multiple languages you can use [[Multi language content|multi-lang syntax]] if you wish, such as &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;span lang=&amp;quot;en&amp;quot; class=&amp;quot;multilang&amp;quot;&amp;gt;Teacher&amp;lt;/span&amp;gt; &amp;lt;span lang=&amp;quot;es_es&amp;quot; class=&amp;quot;multilang&amp;quot;&amp;gt;Profesor&amp;lt;/span&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;. If multi-lang syntax is used then &#039;&#039;Filter all strings&#039;&#039; should be set in [[Filter settings]].&lt;br /&gt;
#Give the role a meaningful short name. The short name is necessary for other plugins in Moodle that may need to refer to the role (e.g. when uploading users from a file or setting enrolments via an enrolment plugin).&lt;br /&gt;
#Give the role a description (optional).&lt;br /&gt;
#Set permissions as required.&lt;br /&gt;
#Scroll to the bottom of the page and click the &amp;quot;Add a new role&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
==Creating a duplicate role==&lt;br /&gt;
{{Moodle 1.8}}In Moodle 1.8 onwards, a new role may be quickly created by making a copy of an existing role.&lt;br /&gt;
&lt;br /&gt;
To create a duplicate role:&lt;br /&gt;
#Click on Permissions in the Site Administration block, then Define roles. &lt;br /&gt;
#Click on the role to be duplicated, for example &amp;quot;Guest&amp;quot;.&lt;br /&gt;
#Click the &amp;quot;Duplicate role&amp;quot; button near the top of the &amp;quot;View role details&amp;quot; page.&lt;br /&gt;
#Answer Yes to the question &amp;quot;Are you sure you want to duplicate the role ...?&amp;quot;&lt;br /&gt;
#The list of roles will now show the &amp;quot;... copy 1&amp;quot; at the bottom, for example &amp;quot;Guest copy 1&amp;quot;.   &lt;br /&gt;
#Edit the duplicated role to meet your needs.&lt;br /&gt;
&lt;br /&gt;
==Legacy role types==&lt;br /&gt;
&lt;br /&gt;
* Legacy role types were implemented for backward compatibility.&lt;br /&gt;
* Selecting a legacy role type in 1.8 (or allowing a legacy capability in 1.7) does NOT provide a new role with all capabilities of a pre-Moodle 1.7 role.&lt;br /&gt;
*It is recommended that a legacy role type is selected only for roles that are similar to pre-Moodle 1.7 student/teacher/admin/creator roles. &lt;br /&gt;
* It is not necessary to select a legacy role type unless using old 3rd party code that was not designed for Moodle 1.7 and doesn&#039;t yet support roles.&lt;br /&gt;
&lt;br /&gt;
==New role considerations==&lt;br /&gt;
&lt;br /&gt;
A newly created or copied role does not have the ability to override or assign any other roles. You should consider if you need to allow the role such rights.&lt;br /&gt;
&lt;br /&gt;
New roles will not by default be listed in course descriptions (even if copied from a role that already is, such as the [[Teacher]] role). This is set via &#039;&#039;Administration &amp;gt; Appearance &amp;gt; [[Course managers]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Testing a new role==&lt;br /&gt;
&lt;br /&gt;
To test a new role:&lt;br /&gt;
#Create test user and assign new role to them.&lt;br /&gt;
#Either logout as admin and then login as test user or use a different browser to login as test user.&lt;br /&gt;
&lt;br /&gt;
Note: Role changes only take effect after the next login from that user. New roles may not be tested using the &amp;quot;Switch role to...&amp;quot; feature.&lt;br /&gt;
&lt;br /&gt;
==Example roles==&lt;br /&gt;
&lt;br /&gt;
*[[Inspector role|Inspector]] - for providing external inspectors with permission to view all courses (without being required to enrol)&lt;br /&gt;
*[[Parent role|Parent]] - for providing parents/mentors/tutors with permission to view certain information about their children/mentees/tutees&lt;br /&gt;
*[[Demo teacher role|Demo teacher]] - for providing a demonstration teacher account with a password which can&#039;t be changed&lt;br /&gt;
*[[Forum moderator role]] - for providing a user with permission in a particular forum to edit or delete forum posts, split discussions and move discussions to other forums&lt;br /&gt;
*[[Keyholder role]] - for setting the person named as holding a course [[Enrolment key|enrolment key]]&lt;br /&gt;
*[[Calendar editor role]] - for enabling a user to add site events to the calendar.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=66782 What happens if a user has multiple roles in a course?] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[Category:Administrator]]&lt;br /&gt;
[[Category:Roles]]&lt;br /&gt;
&lt;br /&gt;
[[es:Gestionar_roles]]&lt;br /&gt;
[[fr:Définir les rôles]]&lt;br /&gt;
[[ja:ロールの管理]]&lt;/div&gt;</summary>
		<author><name>Kcharvey</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/2x/ca/index.php?title=Case_for_Moodle&amp;diff=28436</id>
		<title>Case for Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/2x/ca/index.php?title=Case_for_Moodle&amp;diff=28436"/>
		<updated>2007-11-05T08:33:15Z</updated>

		<summary type="html">&lt;p&gt;Kcharvey: /* Philosophy */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{About Moodle}}&lt;br /&gt;
&lt;br /&gt;
Moodle is open source software. This is something that your average person is not aware of so finding out that it is &#039;free&#039; tends to lead immediately to the assumption of &#039;cheap&#039;. The first thing to do is find out what Open source really is and understand its consequences, namely that:&lt;br /&gt;
*Although the software is free (as in &#039;free beer&#039;), this does not mean that the company producing it is not making a lot of money from it in other ways&lt;br /&gt;
*You are guaranteed the right to copy, modify and redistribute the software, provided you guarantee those same rights to anyone you share it with&lt;br /&gt;
*These rights mean that a community of enthusiasts has developed who report bugs, fix bugs, test new code and write new code for plugins and extensions. This means that you have the efforts of the company + the efforts of the community going into it.&lt;br /&gt;
*Open source tends therefore to be more secure, more stable and to develop faster than equivalent closed source software&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Cultural=&lt;br /&gt;
&lt;br /&gt;
==Support==&lt;br /&gt;
&lt;br /&gt;
Moodle&#039;s open source nature means that there are far more avenues for support available than is the case for other LMS systems. &lt;br /&gt;
* Pop-up help - clicking the blue icons wherever you see then (almost all fields on forms and many other places) gives you access to the main help files that come with the distribution&lt;br /&gt;
* Moodle Docs (this site) is built by the community and is not only available to browse, but each page you see in Moodle has a link at the bottom, which goes to the corresponding documentation on Moodle Docs. This saves you from having to create your own training materials or website in-house and lets you combine any information you wish to provide with the sum of all the knowledge already accumulated&lt;br /&gt;
* Community forums - the &#039;using moodle&#039; course at moodle.org has thousands of dedicated teachers and programmers who are active in conversations every week. You can ask a direct question, or browse all the archived conversations going right back to 2001. You can speak to other teachers or directly to moodle&#039;s designers and programmers&lt;br /&gt;
* Paid for suport contracts and service level agreements - moodle.com lists partner companies who will provide commercial support for your moodle installation. Instead of having to rely on one company to solve your problems or provide training (an effective monopoly, as with other systems), you have a number of companies competing for your training and support business, leading to lower prices and more choice&lt;br /&gt;
&lt;br /&gt;
==Customisation==&lt;br /&gt;
&lt;br /&gt;
Moodle&#039;s open source nature means that you own the system and have rights allowing you to change and modify it, rather than renting it &#039;as is&#039;, which is the case for many competing systems. This, combined with the huge community means that there are an enormous number of third party plugins available so that you can add functionality that is non-standard e.g. support for sending text messages, podcasting, new types of quiz question, 3D molecule models, etc). You can also commission a programmer (see moodle.com if you need one) to make any extra plugin or alteration you like, which if you post it up on moodle.org, others may well improve further for you.&lt;br /&gt;
&lt;br /&gt;
==Philosophy==&lt;br /&gt;
&lt;br /&gt;
Moodle is based on a solid foundation of [[Pedagogy#Social_Constructionism_as_a_Referent|social constructionism]] (strong community, shared experiences, building things together for others to view and use) and grew out of postgraduate research by Martin Dougiamas, its founder. Other companies tend to be led by profit, leading to a focus on marketing to what school decision makers think they need, rather than what actually works best.&lt;br /&gt;
&lt;br /&gt;
==Innovation==&lt;br /&gt;
&lt;br /&gt;
Moodle is not constrained by what will sell well, so the code that is developed, especially by third parties, is often at the cutting edge of educational thinking. The open source thing helps here too, as schools and universities often choose to have moodle enhanced for their own purposes and contribute their code back to the community. Recent examples include the new wiki, developed by a team at Universitat Politecnica de Catalunya and the new groups code developed by the UK Open University.&lt;br /&gt;
&lt;br /&gt;
== Usability ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;To support a host of automated and personalized services, such as self-paced and role-specific learning, the access, delivery and presentation of material must be easy-to-use and highly intuitive — like surfing on the Web or shopping on Amazon.com.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Perhaps the best sentence to short Moodle usability is: &amp;quot;simple and powerful&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
There is some talk about [[Usability|Moodle usability]].&lt;br /&gt;
&lt;br /&gt;
The [[Interface guidelines]] aim to help developers work towards a highly usable system. And the general consensus is that Moodle excels in this area.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Technical=&lt;br /&gt;
&lt;br /&gt;
== High availability ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The LMS must be robust enough to serve the diverse needs of thousands of learners, administrators, content builders and instructors simultaneously.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Usage patterns will vary strongly with the specific context of the deployment. But in general, Moodle presents a high-availability web-based interface, allowing learners, tutors, and administrators routinely to log in and carry out their daily tasks. See the &#039;&#039;scalability&#039;&#039; section for other relevant information.&lt;br /&gt;
&lt;br /&gt;
== Scalability ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The infrastructure should be able to expand or scale to meet future growth, both in terms of the volume of instruction and the size of the student body.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Moodle runs on a wide variety of webservers/database technologies. As with any installation of a server-based software system, it is crucial to refine carefully the choice of hardware, operating system, and database system, to ensure that the system can cope with a high throughput. The largest live Moodle installation at time of writing (Open Polytechnic of New Zealand) handles 45,000+ students and 6,500+ courses registered. There is a page about other [[Large installations|large installations]].&lt;br /&gt;
&lt;br /&gt;
The consensus in the Moodle community seems to be that a Linux-based webserver running Apache, with PHP installed as well as a PHP accelerator, is commonly the best choice, and that the webserver and database server should sit on separate machines.&lt;br /&gt;
&lt;br /&gt;
It should be possible to load-balance a Moodle installation, for example by using more than one webserver if necessary. The separate webservers should query the same database and refer to the same filestore area, but otherwise the separation of the application layers is complete enough to make this kind of clustering feasible. Similarly, the database could be a cluster of servers (e.g. a MySQL cluster).&lt;br /&gt;
&lt;br /&gt;
All this implies that Moodle&#039;s architecture makes it easy to respond to future demand, by adapting the technologies upon which it runs. This should be possible even in a live setting, to improve the service without major disruption.&lt;br /&gt;
&lt;br /&gt;
== Interoperability ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;To support content from different sources and multiple vendors&#039; hardware/software solutions, the LMS should exchange data using open industry standards for Web deployments.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* For &#039;&#039;&#039;authentication&#039;&#039;&#039;, Moodle supports authenticating against LDAP, which is the most widely-used standard protocol for this purpose. It also supports authentication based on direct database lookup (e.g. in an external Oracle database), or on the Shibboleth protocol, or alternatively using IMAP, NNTP, CAS or FirstClass.&lt;br /&gt;
* For &#039;&#039;&#039;enrolment&#039;&#039;&#039;, Moodle supports the use of an LDAP server (e.g. Active Directory), and the [[IMS Enterprise]] standard (via a downloadable plugin).&lt;br /&gt;
* For &#039;&#039;&#039;content&#039;&#039;&#039;, there are a number of aspects:&lt;br /&gt;
** Moodle supports the import/export of Reusable Learning Objects packaged according to the SCORM / IMS Content Packaging standards.&lt;br /&gt;
** Quiz questions can be exported in the international standard IMS QTI 2 format.&lt;br /&gt;
** RSS newsfeeds can be integrated into a Moodle site or course.&lt;br /&gt;
** Forum discussions can be accessed as RSS newsfeeds, and therefore integrated into other RSS-capable websites or systems.&lt;br /&gt;
&lt;br /&gt;
The use of XML for import/export is standard in Moodle. The &amp;quot;web services&amp;quot; method of exchanging data with other systems (e.g. via SOAP or XML-RPC) is not yet standard - but is in active development.&lt;br /&gt;
&lt;br /&gt;
== Stability ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;The LMS infrastructure can reliably and effectively manage a large enterprise implementation running 24x7.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
This is the same issue as discussed in &#039;&#039;Availability&#039;&#039; and &#039;&#039;Scalability&#039;&#039; above.&lt;br /&gt;
&lt;br /&gt;
== Security ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;As with any outward-facing collaborative solution, the LMS can selectively limit and control access to online content, resources and back-end functions, both internally and externally, for its diverse user community.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Moodle&#039;s current system of roles includes administrators, teachers, teachers without editing privileges (sometimes called teaching assistants), students, and guests. Each has a clearly defined set of privileges and cannot act beyond those privileges.&lt;br /&gt;
&lt;br /&gt;
The basic unit of organisation is the &#039;&#039;course&#039;&#039;. An administrator can assign any number of teachers (with or without rights to edit content) to a given course, which has its own file area as well as its own discussions forums and other activities. Teachers can decide whether content is visible or hidden to students.&lt;br /&gt;
&lt;br /&gt;
Moodle is designed and audited to be secure for its purpose. A security issues/announcements site exists at http://security.moodle.org&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
*[[Decision FAQ|FAQ for people deciding on whether to install Moodle]]&lt;br /&gt;
*[[Top 10 Moodle Myths]]&lt;br /&gt;
*Using Moodle [http://moodle.org/mod/forum/view.php?f=485 Comparison and Advocacy forum]&lt;br /&gt;
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=33200 Building the case for Moodle Document] forum discussion which was the original basis of this article&lt;br /&gt;
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=35845 Why switch to Moodle when the university already supports BlackCT] and [http://moodle.org/mod/forum/discuss.php?d=53541 Implementing Moodle - countering the opposition] forum discussions&lt;br /&gt;
&lt;br /&gt;
[[es:A favor de Moodle]]&lt;br /&gt;
[[ja:Moodleの真実]]&lt;/div&gt;</summary>
		<author><name>Kcharvey</name></author>
	</entry>
</feed>