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: |
.htaccess.txt | Authentication. Rename to .htaccess and customize if used |
attach | Script that shows the attach file page (FileAttachment) |
delete | (not used yet) |
edit | Script to edit a topic |
geturl | Script to fetch URL data |
mailnotify | Script called by cron job to notify users of changes |
oops | Script that shows an OK or oops dialog |
preview | Script to preview topic after edit |
rdiff | Script to see differences of topics |
rename | Script to rename/move topics and move attachments |
register | Script to register new users |
save | Script that saves a topic, called by preview |
search | Script that displays search results |
statistics | Script to create statistics topic |
testenv | Script to test CGI environment variables |
upload | Script that does file upload (FileAttachment) |
view | Script to view a topic ( the script ) |
viewfile | Script to view an file attachment |
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