This page explains how to download and install PmWiki 2.1 to 2.3.
Here's a list of related pages:
◆ Installing PmWiki
◆ 1. Download
Download the latest stable version of PmWiki as a
- zip archive (pmwiki-latest.zip), or a
- gzipped tarball (pmwiki-latest.tgz) from https://pmwiki.org/pub/pmwiki/, or
Download the latest beta version from the PmWiki:Subversion page.
◆ 2. Unpack
Unpack the archive (
tar zxvf pmwiki-latest.tgz or
unzip pmwiki-latest.zip). This will create a pmwiki-x.y.z directory containing the PmWiki software. For example, the current "latest" should unpack to a directory named pmwiki-2.3.13. The files in this directory include:
README.txt An introductory document
pmwiki.php The main PmWiki script
local/ Configuration scripts (local configuration files)
cookbook/ Recipes (add-ons) from the Cookbook
docs/ Brief documentation, sample configuration scripts
pub/ Publicly accessible files
pub/css/ Extra CSS stylesheet files 
pub/skins/ Layout templates for custom look and feel
scripts/ Scripts that are part of PmWiki
wikilib.d/ Bundled default PmWiki pages
The pmwiki-x.y.z directory needs to be placed into a location accessible by your webserver (e.g., in a public_html directory of some sort). You can place files and directories using a number of methods -- FTP, or a Unix
cp command generally does the job.
◆ 3. Create directories
In most cases PmWiki will do this for you.
Open a web browser to the pmwiki.php script on the server (i.e., not the one on your local computer or accessed using a file://... URL). PmWiki will then analyze your system configuration and provide instructions (if needed) for creating the wiki.d/ directory which will be used to hold the pages created for your site.
chmod 777 wiki.d"). Use this method when "safe mode" is activated in the server's PHP installation.
chmod 2777 .
chmodcommand also works in many FTP programs. Creating wiki.d/ in this manner will (1) make the directory writable so the web server can create the data directory it needs for the wiki files, (2) preserve group ownership of the directory so the installer account can manipulate the files created in this directory, and (3) make it more difficult for other accounts on the same server to access the files in wiki.d/.
After establishing directory permissions, try opening a browser to the pmwiki.php script again. If all is well, the wiki.d directory will have been created and you'll see the default home page.
Important: If you used method 3b, you should reset permissions by executing "
chmod 755 ." in the directory containing pmwiki.php.
See also File Permissions.
◆ 4. Initialize
◆ 5. Set language
If you want to use PmWiki in a different language download the international language pack as zip archive (i18n-all.zip) from https://pmwiki.org/pub/pmwiki/i18n/. Then extract it and copy the files into the wikilib.d/ directory as described above. Besides the -all file you can also download your country localization file only.
Languages available are:
There are two directories in the decompressed i18n archive, scripts and wikilib.d. Copy the files respectively contained in these directories to the scripts and wikilib.d of your PmWiki directory. For example, for French localization, PmWikiFr.* and PmWiki.* must be contained in the same directory.
Then, enable localization by adding an instruction to
local/config.php to load the language translation page of your choice. For instance,
XLPage('fr','PmWikiFr.XLPage'); loads the French language page
Read more about this on Internationalizations.
- The PmWiki distribution deliberately doesn't include an index.php file. You can easily add your own "wrapper script" in the same directory as pmwiki.php. Create a new file called index.php with the following single line of text (missing a closing "
?>" tag deliberately):
Resist the temptation to rename pmwiki.php to index.php because if you rename the file it will not be overwritten during an upgrade.
- If using the Unix tar command to unpack the archive in step 2 above, be sure that the files are created with sufficient permissions for the webserver to be able to access them. Usually you can ensure this by typing
umask 002on the command line before unpacking the tar file.
- When installing on Windows you should take a look at Cookbook:SimultaneousEdits to enable simultaneous edits on that platform.
- Additional tips can be found at Troubleshooting.
Should I rename pmwiki.php to index.php?
Renaming pmwiki.php is not recommended. Instead, create an index.php file that contains this single line
How do I make pmwiki.php the default page for a website?
Create an index.php file that runs PmWiki from a subdirectory (pmwiki/ for example) and place it in the site's web document root (the main directory for the website).
<?php chdir('pmwiki'); include_once('pmwiki.php');
Note: You will also need to explicitly set the
$PubDirUrl variable (e.g. to
"https://example.com/pmwiki/pub") in local/config.php .
How do I enable "Clean URLs" that are shorter and look like paths to my wiki pages? Why does pmwiki.org appear to have a directory structure rather than "?n=pagename" in URLs?
How can I run PmWiki on a standalone (offline, portable) machine ?