PmWiki Installation
This page explains how to download and install PmWiki 2.1 and 2.2. Here's a list of related pages:
- Requirements - Pre-requisites for running the PmWiki wiki engine
- Upgrades - How to upgrade an existing PmWiki installation
- Wiki Farms - Running multiple wikis from a single installation
- Change Log - Log of changes made to PmWiki by Release
Improvements to these instructions are always appreciated. Just report any problems you encounter to the pmwiki-users mailing list or use the PmWiki Issue Tracking System.
Installing PmWiki
If you upgrade, please read the page Upgrades and Release notes.
1. Download
Download the latest stable version of PmWiki as a
- zip archive (pmwiki-latest.zip), or a
- gzipped tarball (pmwiki-latest.tgz) from http://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.2.135. 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 [1] pub/guiedit/ 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 mv
or 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.
Otherwise, there are two ways to achieve this. (Use Filezilla or WinSCP to change FTP file/folder permissions.)
chmod 777 wiki.d
"). Use this method when "safe mode" is activated in the server's PHP installation.
chmod 2777 .
chmod
command 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 FilePermissions.
4. Initialize
Check out Initial Setup Tasks for other tasks you may want to perform to begin customizing your PmWiki installation. You might also want to peruse the Release Notes for further information.
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 http://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 PmWikiFr.XLPage.
Read more about this on Internationalizations.
Notes
- 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):<?php include_once('pmwiki.php');
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 002
on 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.
See also:
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
<?php include_once('pmwiki.php');
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 "http://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?
See Cookbook:CleanUrls.
How can I run PmWiki on a standalone (offline, portable) machine ?
This page may have a more recent version on pmwiki.org: PmWiki:Installation, and a talk page: PmWiki:Installation-Talk.