Manual:Running MediaWiki on macOS

< MediaWiki User's Guide

The primary development and deployment environment for MediaWiki is on Linux and Unix systems; Mac OS X is a Unix under the hood, so it's fairly straightforward to run it.

I've only tested on 10.2 and 10.3.

Apache
The Apache webserver is included in Mac OS X as "personal web sharing". Turn it on through System Preferences in the Sharing panel. (Security note: by default the included Apache configuration will serve pages to anyone who can open a network connection to your machine. If you have the firewall on, it will punch port 80 open in order to make the web serving public.) You will need to manually edit Apache's configuration later, stay tuned.

MySQL
MySQL should be preinstalled on Mac OS X Server 10.2 or 10.3.

For Mac OS X Client 10.2 or higher, get the install package from http://www.mysql.com/downloads/mysql-4.0.html#Mac_OS_X_Package_Installer

Mac OS 10.2 (jaguar)
On Mac OS X 10.2, you'll need to install PHP. There is an installable package here: http://www.entropy.ch/software/macosx/php/ which I have not tried but should work.

You can install from source too, of course, if you're a Unix-loving masochist.

Mac OS 10.3 (panther)
On Mac OS X 10.3, PHP is installed by default but not enabled. You need to edit /etc/httpd/httpd.conf and uncomment (remove the preceding #s from) the lines that contain "LoadModule php4_module libexec/httpd/libphp4.so" and "AddModule mod_php4.c". Then open the Sharing panel in System Preferences and stop then restart personal web sharing.

Setting up MediaWiki
Get MediaWiki sources (todo: help here).

Setting up the database
blah blah blah

Directory layout
On my machine I've installed them under /Library/MediaWiki like so:

/Library/MediaWiki/wiki.conf A bit of Apache configuration, see below

/Library/MediaWiki/php the *.php files from include/ and languages/ /Library/MediaWiki/cache /Library/MediaWiki/tmp <- temp files for TeX (?) For file cache and TeX temp files (if using). If using, must be writable by the www group.

/Library/MediaWiki/web Here's where the web-exposed stuff will go: wiki.phtml redirect.phtml LocalSettings.php style/ upload/ math/

Apache configuration
The 'wiki.conf' might look something like this:

Alias /wiki "/Library/MediaWiki/web"

 Options Indexes MultiViews FollowSymLinks AllowOverride None Order allow,deny Allow from all 

 AllowOverride None AddType text/plain .html .htm .shtml php_admin_flag engine off 

RewriteEngine on  RewriteRule ^/wiki/en/(.*)$ /wiki/wiki.phtml?title=$1

Security note: unless you've disabled uploads, do not forget to disable PHP in the upload directory.

blah blah blah

On 10.3, you can copy or symlink wiki.conf info /etc/httpd/users/. On 10.2 you may need to add this line to the bottom of /private/etc/httpd/httpd.conf:

Include /Library/MediaWiki/wiki.conf

That done, restart Apache. Restart it manually to make sure it reports any errors to you:

sudo apachectl restart

(If you restart it from the Sharing panel and there's a config error, it'll just sit there mute. Very annoying.)

You may need to enable PHP also, see the instructions that came with PHP. Make sure that the .phtml extension is assigned to PHP as well as .php; there should be a line like:

AddType application/x-httpd-php .php .phtml

Mail
To send outgoing mail (inter-user messages and password reminders) a mail server needs to be running.

The mail server on 10.2 is sendmail, but is misconfigured in OS X client and won't run by default. 

On 10.3 postfix is the default mail server; to enable it see

PHP configuration
MediaWiki requires that register_globals be on. Find php.ini (might be in /usr/local/lib or /usr/local/php/lib) and find that and turn it on. Restart Apache.

Mac-specific notes
The HFS+ filesystem is not case-sensitive, but MediaWiki is in various places. There conceivably may be problems relating to this.