Manual:Running MediaWiki on Arch Linux
Arch Wiki has a page about MediaWiki that provides more details, but lacks paste-able code to quickly get things up and running. So the focus here is on just the basic recipe for a quick installation. Note the following commands should be run as root user (to get into root run su
, for example).
Install Apache, PHP, MySQL, and MediaWiki
[edit ]pacman-Smediawikimariadbphpapachephp-apache
Optional packages
[edit ]To enable cache on php (mediawiki will work faster):
pacman-Sphp-apcu
If your mediawiki database is encoded in binary php-intl will make the translation from binary to utf8 faster:
pacman-Sphp-intl
Set up MySQL (MariaDB)
[edit ]This will do the basic configuration of MySQL (without this MySQL will fail to start):
mysql_install_db--user=mysql--basedir=/usr/--ldata=/var/lib/mysql/
This will start MySQL and and enable the start at bootup:
systemctlstartmysqld
systemctlenablemysqld
Set a database root password:
mysqladmin-urootpasswordYOUR_DESIRED_PASSWORD_HERE
history-c
Alternately, to set a root password:
mysql_secure_installation
Set up Apache and PHP
[edit ]cd/etc/webapps/mediawiki grep-vopen_basedirapache.example.conf>httpd-mediawiki.conf cd/usr/share/webapps/mediawiki
If you already have a .htaccess
file you can run
perl-p-i-e"s/deny/allow/".htaccess
Otherwise you have to create one from scratch. A very basic (but insecure?) one could look like this:
cat>>.htaccess<< EOF order allow,deny allow from all EOF
cat>>/etc/httpd/conf/httpd.conf<< EOF LoadModule php7_module modules/libphp7.so Include conf/extra/php7_module.conf Include /etc/webapps/mediawiki/httpd-mediawiki.conf EOF ifyourunintoerrorslaunchinghttpd-youneedtoomitthe7relatedtophp cat>>/etc/httpd/conf/httpd.conf<< EOF LoadModule php_module modules/libphp.so Include conf/extra/php_module.conf Include /etc/webapps/mediawiki/httpd-mediawiki.conf EOF
As the Arch Wiki notes [1], mod_mpm_event does not work with libphp7.so. So you need to open /etc/httpd/conf/httpd.conf
and comment the the mpm_event_module
and uncomment the mpm_prefork_module
:
#LoadModule mpm_event_module modules/mod_mpm_event.so LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
Edit /etc/php/php.ini
and set the open_basedir
to the path /var/lib/mediawiki
(the directory for uploads).
open_basedir = "/tmp:/usr/share/webapps/:/var/lib/mediawiki"
Still in /etc/php/php.ini
, in the Dynamic Extensions
, make sure the following extentions are activated, by uncommenting or creating the following lines:
extension=gd.so extension=intl.so extension=iconv.so extension=mysqli.so
Now start Apache and tell systemd to launch it during boot:
systemctlstarthttpd
systemctlenablehttpd
Use the browser to configure MediaWiki
[edit ]Go to http://localhost/mediawiki/mw-config/index.php and follow the instructions. Enter the database root password you defined above in the appropriate box. Don't skip any parts of the installation even if the installer suggests it—you need those extra steps to enable file uploads and wiki extensions.
When configuration is finished, your browser will download the file LocalSettings.php
. Copy it to /usr/share/webapps/mediawiki/
. Your Wiki should now be accessible at http://localhost/mediawiki/.
Uploads and image thumbnails
[edit ]To enabled image uploads, first, install ImageMagick.
pacman-Simagemagick
Then, in /usr/share/webapps/mediawiki/LocalSettings.php
, uncomment the lines:
$wgUseImageMagick = true; $wgImageMagickConvertCommand = "/usr/bin/convert";
And finally, restart Apache for the changes to take effect:
systemctlrestarthttpd