(:Summary:variables used for uploads/attachments:)
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
\$LinkText\\
Δ");
:$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
:$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 [[PmWiki/AvailableActions#download|[@?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
:$UploadPrefixQuota:Overall size limit for groups, in the group configuration file (i.e., local/Group.php)
:$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
@]
:$UploadMaxSize:Maximum size for uploading files, 50000 octets (bytes) by default.