To install the xmlrpc library on Microsoft Windows:
- Open the php.ini file, depending on your installation this may be found in the moodle/apache/bin folder
- Find the line:
- Remove the
;at the beginning of the line
- If necessary restart the web server, e.g. IIS or Apache.
To install the xmlrpc library on Linux/Unix
If you are using PHP as provided by the OS, you can just install the appropriate package, and restart the service (e.g. PHP-FPM or Apache):
- On Ubuntu and Debian, the command is: apt-get install php-xmlrpc
- On RedHat, Fedora, CentOS and SuSE, the command is: dnf install php-xmlrpc
If you compiled your PHP from source:
- You need to recompile PHP from source
- add --with-xmlrpc to the command line when you run configure
You can (usually) ignore this warning
There are 2 features in Moodle that require that PHP extension - both are disabled by default:
- "Moodle networking/Mnet" - has been historically used for connecting multiple Moodle sites to each other, so you can share login processes, or connecting Moodle to Mahara (an e-portfolio system). MNet is generally considered deprecated and the LTI features in Moodle mostly provide replacements; however Mnet still contains some functions that are not easy to reproduce using other methods - it's unlikely it will be officially removed until the functionality Mnet currently provides can be easily replicated using other functionality.
- XMLRPC Web services protocol - If enabled, Moodle web services allow external systems to make API calls to your Moodle site - there are a few different ways (protocols) that this data can be formatted; one of those protocols is XMLRPC and it uses the XMLRPC PHP exension to do this.
If you have not enabled either of these features, you can safely ignore the warning. PHP 8.0 has also removed the extension out of core, so Moodle is currently investigating the options of improving this warning/removing it - more info in https://tracker.moodle.org/browse/MDL-70889