TWiki Implementation Notes
Platform
TWiki is written in Perl 5 and also uses some shell commands. The current implementation runs best on a Unix machine, but it is also possible on Microsoft Windows. RCS (for revision control) must be installed on the system.
Required Environment by Platform |
Package(s): |
Unix: |
Windows: |
Perl |
5.x |
5.x |
Non-standard Perl modules |
|
MIME::Base64 , Digest::SHA1 (for password generation) |
Optional Perl modules |
Net::SMTP (or sendmail) |
Net::SMTP |
RCS |
5.7 |
5.7 (including diff |
Other external programs |
ls , fgrep , egrep |
ls , fgrep , egrep |
Web server |
Apache |
Apache, IIS |
Directory Structure
Directory: |
Used for: |
twiki/bin |
TWiki Perl scripts |
twiki/lib/TWiki |
TWiki Perl modules |
twiki/lib/TWiki/Plugins |
Plugins modules |
twiki/pub |
Public files (FileAttachments, images), plus RCS histories |
twiki/data |
source (topic) text, including RCS histories |
twiki/templates |
HTML templates, used by TWiki scripts |
Files in twiki/bin
File: |
Used for: |
viewfile |
Script to view an file attachment |
view |
Script to view a topic ( the script ) |
upload |
Script that does file upload (FileAttachment) |
testenv |
Script to test CGI environment variables |
statistics |
Script to create statistics topic |
search |
Script that displays search results |
save |
Script that saves a topic, called by preview |
rename |
Script to rename/move topics and move attachments |
register |
Script to register new users |
rdiff |
Script to see differences of topics |
preview |
Script to preview topic after edit |
oops |
Script that shows an OK or oops dialog |
mailnotify |
Script called by cron job to notify users of changes |
geturl |
Script to fetch URL data |
edit |
Script to edit a topic |
delete |
(not used yet) |
attach |
Script that shows the attach file page (FileAttachment) |
.htaccess.txt |
Authentication. Rename to .htaccess and customize if used |
Files in twiki/lib
File: |
Used for: |
TWiki.pm |
Main TWiki library |
TWiki.cfg |
For initialization and configuration, used by TWiki.pm |
Files in twiki/lib/TWiki
File: |
Used for: |
Access.pm |
Access control |
Attach.pm |
Attachment handling |
Meta.pm |
Meta data in topics |
Net.pm |
SMTP mail handling |
Plugins.pm |
Plugin handling |
Prefs.pm |
Preferences handling |
Search.pm |
Search engine, used by wiki.pm |
Store.pm |
Back-end storage, *.txt text file and *.txt,v RCS repository file handling |
Files in twiki/lib/TWiki/Plugins
File: |
Used for: |
DefaultPlugin.pm |
Default plugin |
EmptyPlugin.pm |
Empty plugin, use to create your own |
InterwikiPlugin.pm |
Refer to external Wikis and other Web sites |
--
MikeMannix - 26 Aug 2001