PmWiki is a wiki-based system for collaborative creation and maintenance of websites.
PmWiki pages look and act like normal web pages, except they have an "Edit" link that makes it easy to modify existing pages and add new pages into the website, using basic editing rules. You do not need to know or use any HTML or CSS. Page editing can be left open to the public or restricted to small groups of authors.
Key PmWiki Features
Custom look-and-feel: A site administrator can quickly change the appearance and functions of a PmWiki site by using different
skins and HTML templates. If you can't find an appropriate skin
already made, you can easily modify one or create your own.
Access control: PmWiki password protection can be applied to an entire site, to groups of pages, or to individual pages. Password protection controls who can read pages, edit pages, and upload attachments. PmWiki's access control system is completely self-contained, but it can also work in conjunction with existing password databases, such as
.htaccess, LDAP servers, and MySQL databases.
Customization and plugin architecture: One principle of the
PmWikiPhilosophy is to only include essential features in the core engine, but make it easy for administrators to customize and add new markup. Hundreds of features are already available by using extensions (called "recipes") that are available from the PmWiki
Cookbook.
PmWiki is written in PHP and distributed under the General Public License. It is designed to be simple to install, customize, and maintain for a variety of applications. This site is running pmwiki-2.2.11.
PmWiki is a registered trademark of Patrick R. Michaud.
PmWiki's home on the web is at pmwiki.org.
See also: Uploads, Uploads admin.
$EnableUpload- The upload.php script is automatically included from stdconfig.php if the
$EnableUpload variable is true in config.php. Note that one may still need to set an upload password before users can upload (see UploadsAdmin).
$UploadDir- The directory where uploads are to be stored. Defaults to uploads/ in the pmwiki directory, but can be set to any location on the server. This directory must be writable by the webserver process if uploading is to occur.
$UploadUrlFmt- The url of the directory given by
$UploadDir. By default, $UploadUrlFmt is derived from $PubDirUrl and $UploadDir.
$IMapLinkFmt['Attach:']
The format of the upload link displayed when an attachment is present. No default is set.
$LinkUploadCreateFmt- The format of the upload link displayed when an attachment not present. Defaults to
<a class='createlinktext' href='\$LinkUpload'>\$LinkText</a>
<a class='createlink' href='\$LinkUpload'> Δ</a>");
$UploadPrefixFmt- Sets the prefix for uploaded files to allow attachments to be organized other than by groups. Defaults to
'/$Group' (uploads are organized per-group), but can be set to other values for sitewide or per-page attachments.
$UploadPrefixFmt = '/$Group/$Name'; # per-page attachments
$UploadPrefixFmt = ''; # sitewide attachments
-
- It is recommended to have the
$UploadPrefixFmt variable defined in config.php, the same for all pages in the wiki, and not in group/page local configuration files. Otherwise you will be unable to link to attachments in other wikigroups.
$EnableDirectDownload- When set to 1 (the default), links to attachments bypass PmWiki and come directly from the webserver. Setting
$EnableDirectDownload=0; causes requests for attachments to be obtained via ?action=download. This allows PmWiki to protect attachments using a page's read permissions, but also increases the load on the server. Don't forget to protect your directory /uploads/ with a .htaccess file (Order Deny,Allow / Deny from all).
$EnableUploadGroupAuth- Set
$EnableUploadGroupAuth = 1; to authenticate downloads with the group password. This could be used together with $EnableDirectDownload = 0;.
$EnableUploadVersions- When set to 1 (default is 0), uploading a file to a location where a file of the same name already exists causes the old version to be renamed to
file.ext,timestamp (instead of being overwritten). timestamp is a Unix-style timestamp.
$EnableUploadOverwrite- When set to 1 (the default), determines if overwriting previously uploaded files is allowed.
$UploadNameChars- The set of characters allowed in upload names. Defaults to
"-\w. ", which means alphanumerics, hyphens, underscores, dots, and spaces can be used in upload names, and everything else will be stripped.
-
$UploadNameChars = "-\\w. !=+"; # allow exclamations, equals, and plus
-
$UploadNameChars = "-\\w. \\x80-\\xff"; # allow unicode
$MakeUploadNamePatterns- An array of regular expression replacements that is used to normalize the filename of an attached file. First, everything but
$UploadNameChars will be stripped, then the file extension will be converted to lowercase. Administrators can override these replacements with a custom definition.
$UploadDirQuota- Overall size limit for all uploads.
$UploadDirQuota = 100*1024; # limit uploads to 100KiB
$UploadDirQuota = 1000*1024; # limit uploads to 1000KiB
$UploadDirQuota = 1024*1024; # limit uploads to 1MiB
$UploadDirQuota = 25*1024*1024; # limit uploads to 25MiB
$UploadDirQuota = 2*1024*1024*1024; # limit uploads to 2GiB
$UploadPrefixQuota- Overall size limit for one directory containing uploads. This directory is usually
uploads/GroupName (one for every WikiGroup), or uploads/Group/PageName (one for every page), depending on the variable $UploadPrefixFmt.
$UploadMaxSize- Maximum size for uploading files, 50000 octets (bytes) by default.
PmWiki is a wiki-based system for collaborative creation and maintenance of websites.
PmWiki pages look and act like normal web pages, except they have an "Edit" link that makes it easy to modify existing pages and add new pages into the website, using basic editing rules. You do not need to know or use any HTML or CSS. Page editing can be left open to the public or restricted to small groups of authors.
Key PmWiki Features
Custom look-and-feel: A site administrator can quickly change the appearance and functions of a PmWiki site by using different
skins and HTML templates. If you can't find an appropriate skin
already made, you can easily modify one or create your own.
Access control: PmWiki password protection can be applied to an entire site, to groups of pages, or to individual pages. Password protection controls who can read pages, edit pages, and upload attachments. PmWiki's access control system is completely self-contained, but it can also work in conjunction with existing password databases, such as
.htaccess, LDAP servers, and MySQL databases.
Customization and plugin architecture: One principle of the
PmWikiPhilosophy is to only include essential features in the core engine, but make it easy for administrators to customize and add new markup. Hundreds of features are already available by using extensions (called "recipes") that are available from the PmWiki
Cookbook.
PmWiki is written in PHP and distributed under the General Public License. It is designed to be simple to install, customize, and maintain for a variety of applications. This site is running pmwiki-2.2.11.
PmWiki is a registered trademark of Patrick R. Michaud.
PmWiki's home on the web is at pmwiki.org.