3 <li><a href="#TWiki Operating Environment"> TWiki Operating Environment</a><ul>
4 <li><a href="#Overview"> Overview</a></li>
5 <li><a href="#Server-Side Requirements"> Server-Side Requirements</a></li>
6 <li><a href="#Client-Side Requirements"> Client-Side Requirements</a><ul>
7 <li><a href="#Known Issues"> Known Issues</a></li>
10 <li><a href="#TWiki File System"> TWiki File System</a><ul>
11 <li><a href="#File Descriptions"> File Descriptions</a><ul>
12 <li><a href="#Files in twiki"> Files in <code>twiki</code></a></li>
13 <li><a href="#Files in twiki/bin"> Files in <code>twiki/bin</code></a></li>
14 <li><a href="#Files under twiki/lib"> Files under <code>twiki/lib</code></a></li>
15 <li><a href="#Files under twiki/pub"> Files under <code>twiki/pub</code></a></li>
16 <li><a href="#Files under twiki/data"> Files under <code>twiki/data</code></a></li>
17 <li><a href="#Files in twiki/templates"> Files in <code>twiki/templates</code></a></li>
27 # <a name="TWiki Operating Environment"></a> TWiki Operating Environment
29 _Server and client system requirements, file system structure_
31 ## <a name="Overview"></a> Overview
33 Maintaining minimum client and server requirements is necessary to keep TWiki deployment as broad as possible.
35 ## <a name="Server-Side Requirements"></a> Server-Side Requirements
37 TWiki is written in Perl 5 and uses a number of shell commands. It requires GNU RCS (Revision Control System) to be installed on the same system. TWiki is developed in a standard Linux/Apache environment. It can also work with Microsoft Windows and other platforms.
39 <table border="1" cellpadding="0" cellspacing="0">
41 <th bgcolor="#99CCCC" colspan="3"><strong> Required Server Environment </strong></th>
44 <th bgcolor="#99CCCC"><strong> Resource </strong></th>
45 <th bgcolor="#99CCCC"><strong> Unix </strong></th>
46 <th bgcolor="#99CCCC"><strong> Windows </strong></th>
50 <td align="center" colspan="2"> 5.005_03 or higher </td>
53 <td> Non standard Perl modules </td>
54 <td align="center"><code>Net::SMTP</code> (or <code>sendmail</code>) </td>
55 <td align="right"><code>Net::SMTP</code>, <code>MIME::Base64</code>, <code>Digest::SHA1</code></td>
59 <td align="center" colspan="2"> 5.7 or higher </td>
62 <td> Other external programs </td>
63 <td align="center" colspan="2"><code>ls, fgrep, egrep</code></td>
67 <td align="center" colspan="2"> Apache; others (with support for CGI, authentication, extended path) <strong>*</strong></td>
71 Current documentation covers Linux only. Compiling a basic [TWikiOnWindows](http://twiki.org/cgi-bin/view/Codev/TWikiOnWindows) installation guide is an ongoing effort.
73 ## <a name="Client-Side Requirements"></a> Client-Side Requirements
75 The TWiki standard installation has extremely low browser requirements:
78 - minimal use of JavaScript in the user interface (degrades gracefully)
82 TWiki generates XHTML 1.0 code as long as it is compatible with HTML 3.2.
84 ### <a name="Known Issues"></a> Known Issues
86 - The new [[TWikiPlugins]] feature currently does not have any compatibility guidelines for developers. Plugins can require just about anything: browser-specific functions, stylesheets (CSS), Java, cookies, etc.
88 ## <a name="TWiki File System"></a> TWiki File System
90 You can rename the root TWiki directory - `twiki` - to whatever you like by changing it in the `twiki.cfg` configuration file. However, to keep the current installation and future upgrades simple, you should leave the subdirectory structure intact:
92 <table border="1" cellpadding="0" cellspacing="0">
94 <th bgcolor="#99CCCC"><strong> Directory: </strong></th>
95 <th bgcolor="#99CCCC"><strong> Files: </strong></th>
96 <th bgcolor="#99CCCC"><strong> Used for: </strong></th>
99 <td><code>twiki</code></td>
100 <td align="center">[[Main/WebHome#TWikiFiles]]</td>
101 <td> Start-up info </td>
104 <td><code>twiki/bin</code></td>
105 <td align="center">[[Main/WebHome#BinFiles]]</td>
106 <td> Perl scripts </td>
109 <td><code>twiki/lib</code></td>
110 <td align="center">[[Main/WebHome#LibFiles]]</td>
111 <td> Configuration file, main library, Perl system modules, Plugins </td>
114 <td><code>twiki/pub</code></td>
115 <td align="center">[[Main/WebHome#PubFiles]]</td>
116 <td> Public support files (ex: [[Main/FileAttachments]], images) and RCS histories) </td>
119 <td><code>twiki/data</code></td>
120 <td align="center">[[Main/WebHome#DataFiles]]</td>
121 <td> Topic text (page content) and RCS histories; </td>
124 <td><code>twiki/templates</code></td>
125 <td align="center">[[Main/WebHome#TemplatesFiles]]</td>
126 <td> HTML templates, used by TWiki scripts </td>
130 ### <a name="File Descriptions"></a> File Descriptions
132 A rundown of the individual files in the current %VERSION% distribution, organized by TWiki root directories. All listings are complete unless otherwise noted.
134 <a name="TWikiFiles"></a>
136 #### <a name="Files in twiki"></a> Files in `twiki`
138 Introductory and installation files.
140 <table border="1" cellpadding="0" cellspacing="0">
142 <th bgcolor="#99CCCC"><strong> File: </strong></th>
143 <th bgcolor="#99CCCC"><strong> Used for: </strong></th>
146 <td><code>index.html</code></td>
147 <td> A page with a link to first launch TWiki after install </td>
150 <td><code>license.txt</code></td>
151 <td> GNU General Public License and TWiki-specific info </td>
154 <td><code>readme.txt</code></td>
155 <td> General TWiki start-up info with relevant URLs. </td>
158 <td><code>TWikiDocumentation.html</code></td>
159 <td> All documentation packaged as a single page </td>
162 <td><code>TWikiHistory.html</code></td>
163 <td> TWiki development timeline </td>
167 <a name="BinFiles"></a>
169 #### <a name="Files in twiki/bin"></a> Files in `twiki/bin`
171 All Perl CGI scripts.
173 <table border="1" cellpadding="0" cellspacing="0">
175 <th bgcolor="#99CCCC"><strong> File: </strong></th>
176 <th bgcolor="#99CCCC"><strong> Used for: </strong></th>
179 <td><code>.htaccess.txt</code></td>
180 <td> Authentication. Rename to .htaccess and customize if used </td>
183 <td><code>attach</code></td>
184 <td> Script that shows the attach file page ([[Main/FileAttachment]]) </td>
187 <td><code>delete</code></td>
188 <td> (not used yet) </td>
191 <td><code>edit</code></td>
192 <td> Script to edit a topic </td>
195 <td><code>geturl</code></td>
196 <td> Script to fetch URL data </td>
199 <td><code>mailnotify</code></td>
200 <td> Script called by cron job to notify users of changes </td>
203 <td><code>oops</code></td>
204 <td> Script that shows an OK or oops dialog </td>
207 <td><code>preview</code></td>
208 <td> Script to preview topic after edit </td>
211 <td><code>rdiff</code></td>
212 <td> Script to see differences of topics </td>
215 <td><code>rename</code></td>
216 <td> Script to rename/move topics and move attachments </td>
219 <td><code>register</code></td>
220 <td> Script to register new users </td>
223 <td><code>save</code></td>
224 <td> Script that saves a topic, called by preview </td>
227 <td><code>search</code></td>
228 <td> Script that displays search results </td>
231 <td><code>statistics</code></td>
232 <td> Script to create statistics topic </td>
235 <td><code>testenv</code></td>
236 <td> Script to test CGI environment variables </td>
239 <td><code>upload</code></td>
240 <td> Script that does file upload ([[Main/FileAttachment]]) </td>
243 <td><code>view</code></td>
244 <td> Script to view a topic ( <strong>the</strong> script ) </td>
247 <td><code>viewfile</code></td>
248 <td> Script to view an file attachment </td>
252 <a name="LibFiles"></a>
254 #### <a name="Files under twiki/lib"></a> Files under `twiki/lib`
256 The new `lib/TWiki/Plugins` directories contain core configuration, libraries and function modules, and Plugins.
258 <table border="1" cellpadding="0" cellspacing="0">
260 <th bgcolor="#99CCCC"><strong> File: </strong></th>
261 <th bgcolor="#99CCCC"><strong> Used for: </strong></th>
264 <td><code>TWiki.pm</code></td>
265 <td> Main TWiki library </td>
268 <td><code>TWiki.cfg</code></td>
269 <td> For configuration, used by <code>TWiki.pm</code></td>
272 <td><code>TWiki/Access.pm</code></td>
273 <td> Access control </td>
276 <td><code>TWiki/Attach.pm</code></td>
277 <td> Attachment handling </td>
280 <td><code>TWiki/Form.pm</code></td>
281 <td> Form handling </td>
284 <td><code>TWiki/Meta.pm</code></td>
285 <td> Meta data in topics </td>
288 <td><code>TWiki/Net.pm</code></td>
289 <td> SMTP mail handling </td>
292 <td><code>TWiki/Plugins.pm</code></td>
293 <td> Plugin handling </td>
296 <td><code>TWiki/Prefs.pm</code></td>
297 <td> Preferences handling </td>
300 <td><code>TWiki/Search.pm</code></td>
301 <td> Search engine, used by wiki.pm </td>
304 <td><code>TWiki/Store.pm</code></td>
305 <td> Back-end storage, <code>*.txt</code> text file and <code>*.txt,v</code> RCS repository file handling </td>
308 <td><code>TWiki/Plugins/DefaultPlugin.pm</code></td>
309 <td> Default plugin </td>
312 <td><code>TWiki/Plugins/EmptyPlugin.pm</code></td>
313 <td> Empty plugin, use to create your own </td>
316 <td><code>TWiki/Plugins/InterwikiPlugin.pm</code></td>
317 <td> Refer to external Wikis and other Web sites </td>
321 <a name="PubFiles"></a>
323 #### <a name="Files under twiki/pub"></a> Files under `twiki/pub`
325 **_attachments like images..._**
327 <table border="1" cellpadding="0" cellspacing="0">
329 <th bgcolor="#99CCCC"><strong> File: </strong></th>
330 <th bgcolor="#99CCCC"><strong> Used for: </strong></th>
333 <td><code>favicon.ico</code></td>
337 <td><code>twikilogo.gif</code></td>
341 <td><code>twikilogo1.gif</code></td>
345 <td><code>twikilogo2.gif</code></td>
349 <td><code>twikilogo3.gif</code></td>
353 <td><code>twikilogo4.gif</code></td>
357 <td><code>wikiHome.gif</code></td>
361 <td><code>icn/_filetypes.txt</code></td>
365 <td><code>icn/bat.gif</code></td>
369 <td><code>icn/bmp.gif</code></td>
373 <td><code>icn/c.gif</code></td>
377 <td><code>icn/dll.gif</code></td>
381 <td><code>icn/doc.gif</code></td>
385 <td><code>icn/else.gif</code></td>
389 <td><code>icn/exe.gif</code></td>
393 <td><code>icn/fon.gif</code></td>
397 <td><code>icn/h.gif</code></td>
401 <td><code>icn/hlp.gif</code></td>
405 <td><code>icn/html.gif</code></td>
409 <td><code>icn/java.gif</code></td>
413 <td><code>icn/mov.gif</code></td>
417 <td><code>icn/pdf.gif</code></td>
421 <td><code>icn/pl.gif</code></td>
425 <td><code>icn/ppt.gif</code></td>
429 <td><code>icn/ps.gif</code></td>
433 <td><code>icn/py.gif</code></td>
437 <td><code>icn/ram.gif</code></td>
441 <td><code>icn/reg.gif</code></td>
445 <td><code>icn/sh.gif</code></td>
449 <td><code>icn/sniff.gif</code></td>
453 <td><code>icn/ttf.gif</code></td>
457 <td><code>icn/txt.gif</code></td>
461 <td><code>icn/wav.gif</code></td>
465 <td><code>icn/wri.gif</code></td>
469 <td><code>icn/xls.gif</code></td>
473 <td><code>icn/zip.gif</code></td>
477 <td><code>Know/IncorrectDllVersionW32PTH10DLL/W32PTH10.DLL</code></td>
481 <td><code>TWiki/FileAttachment/Sample.txt</code></td>
485 <td><code>TWiki/FileAttachment/Smile.gif</code></td>
489 <td><code>TWiki/PreviewBackground/blankltgraybg.gif</code></td>
493 <td><code>TWiki/PreviewBackground/blankwhitebg.gif</code></td>
497 <td><code>TWiki/PreviewBackground/previewbg.gif</code></td>
501 <td><code>TWiki/WabiSabi/wabisabi.gif</code></td>
506 <a name="DataFiles"></a>
508 #### <a name="Files under twiki/data"></a> Files under `twiki/data`
510 The `data` directory stores TWiki page data as individual text files. Each active web has its own subdirectory. The TWiki distribution package includes four start-up webs, with a number of pages of documentation and demo content. _This is a representative partial file listing..._
512 <table border="1" cellpadding="0" cellspacing="0">
514 <th bgcolor="#99CCCC"><strong> File: </strong></th>
515 <th bgcolor="#99CCCC"><strong> Used for: </strong></th>
518 <td><code>.htpasswd</code></td>
522 <td><code>debug.txt</code></td>
526 <td><code>mime.types</code></td>
530 <td><code>warning.txt</code></td>
534 <td colspan="2"> _default directory can be copied to empty directory when creating new Webs </td>
537 <td><code>_default/.changes</code></td>
538 <td> Record of topic changes recorded here </td>
541 <td><code>_default/WebChanges.txt</code></td>
542 <td> Display most recent changes </td>
545 <td><code>_default/WebChanges.txt,v</code></td>
549 <td><code>_default/WebHome.txt</code></td>
553 <td><code>_default/WebHome.txt,v</code></td>
557 <td><code>_default/WebIndex.txt</code></td>
561 <td><code>_default/WebIndex.txt,v</code></td>
565 <td><code>_default/WebNotify.txt</code></td>
569 <td><code>_default/WebNotify.txt,v</code></td>
573 <td><code>_default/WebPreferences.txt</code></td>
577 <td><code>_default/WebPreferences.txt,v</code></td>
581 <td><code>_default/WebSearch.txt</code></td>
585 <td><code>_default/WebSearch.txt,v</code></td>
589 <td><code>_default/WebStatistics.txt</code></td>
593 <td><code>_default/WebStatistics.txt,v</code></td>
597 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
598 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
601 <td><code>Know/TopicClassification.txt</code></td>
605 <td><code>Know/TopicClassification.txt,v</code></td>
609 <td><code>Know/TWikiCategory.txt</code></td>
613 <td><code>Know/TWikiCategory.txt,v</code></td>
617 <td><code>Know/UseCategory.txt</code></td>
621 <td><code>Know/UseCategory.txt,v</code></td>
625 <td><code>Know/WebChanges.txt</code></td>
629 <td><code>Know/WebChanges.txt,v</code></td>
633 <td><code>Know/WebForm.txt</code></td>
637 <td><code>Know/WebForm.txt,v</code></td>
641 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
642 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
645 <td><code>Main/OfficeLocations.txt</code></td>
649 <td><code>Main/OfficeLocations.txt,v</code></td>
653 <td><code>Main/PeterThoeny.txt</code></td>
657 <td><code>Main/PeterThoeny.txt,v</code></td>
661 <td><code>Main/SanJoseOffice.txt</code></td>
665 <td><code>Main/SanJoseOffice.txt,v</code></td>
669 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
670 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
673 <td><code>Main/TWikiGuest.txt</code></td>
677 <td><code>Main/TWikiGuest.txt,v</code></td>
681 <td><code>Main/TWikiUsers.txt</code></td>
685 <td><code>Main/TWikiUsers.txt,v</code></td>
689 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
690 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
693 <td><code>Test/TestTopic1.txt</code></td>
697 <td><code>Test/TestTopic1.txt,v</code></td>
701 <td><code>Test/WebHome.txt</code></td>
705 <td><code>Test/WebHome.txt,v</code></td>
709 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
710 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
713 <td><code>Trash/WebHome.txt</code></td>
717 <td><code>Trash/WebHome.txt,v</code></td>
721 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
722 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
725 <td><code>TWiki/DeleteTopic.txt</code></td>
729 <td><code>TWiki/DeleteTopic.txt,v</code></td>
733 <td><code>TWiki/DontNotify.txt</code></td>
737 <td><code>TWiki/DontNotify.txt,v</code></td>
741 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
742 <th align="center" bgcolor="#99CCCC"><strong> ... </strong></th>
746 <a name="TemplatesFiles"></a>
748 #### <a name="Files in twiki/templates"></a> Files in `twiki/templates`
750 _Used to flexibly control appearance of rendered pages..._
752 <table border="1" cellpadding="0" cellspacing="0">
754 <th bgcolor="#99CCCC"><strong> File: </strong></th>
755 <th bgcolor="#99CCCC"><strong> Used for: </strong></th>
758 <td><code>oopsbadpwformat.tmpl</code></td>
762 <td><code>attachagain.tmpl</code></td>
766 <td><code>attachnew.tmpl</code></td>
770 <td><code>changeform.tmpl</code></td>
774 <td><code>changes.tmpl</code></td>
778 <td><code>edit.iejs.tmpl</code></td>
782 <td><code>edit.tmpl</code></td>
786 <td><code>mailnotify.tmpl</code></td>
790 <td><code>moveattachment.tmpl</code></td>
794 <td><code>oopsaccesschange.tmpl</code></td>
798 <td><code>oopsaccessgroup.tmpl</code></td>
802 <td><code>oopsaccessrename.tmpl</code></td>
806 <td><code>oopsaccessview.tmpl</code></td>
810 <td><code>oopsauth.tmpl</code></td>
814 <td><code>attach.tmpl</code></td>
818 <td><code>oopschangepasswd.tmpl</code></td>
822 <td><code>oopsempty.tmpl</code></td>
826 <td><code>oopslocked.tmpl</code></td>
830 <td><code>oopslockedrename.tmpl</code></td>
834 <td><code>oopsmissing.tmpl</code></td>
838 <td><code>oopsmoveerr.tmpl</code></td>
842 <td><code>oopsnoformdef.tmpl</code></td>
846 <td><code>oopsnotwikiuser.tmpl</code></td>
850 <td><code>oopsnoweb.tmpl</code></td>
854 <td><code>oopspreview.tmpl</code></td>
858 <td><code>oopsregexist.tmpl</code></td>
862 <td><code>oopsregpasswd.tmpl</code></td>
866 <td><code>oopsregrequ.tmpl</code></td>
870 <td><code>oopsregthanks.tmpl</code></td>
874 <td><code>oopsregwiki.tmpl</code></td>
878 <td><code>oopsrenameerr.tmpl</code></td>
882 <td><code>oopsresetpasswd.tmpl</code></td>
886 <td><code>oopsrev.tmpl</code></td>
890 <td><code>oopssave.tmpl</code></td>
894 <td><code>oopssaveerr.tmpl</code></td>
898 <td><code>oopssendmailerr.tmpl</code></td>
902 <td><code>oopstopicexists.tmpl</code></td>
906 <td><code>oopsupload.tmpl</code></td>
910 <td><code>oopswrongpassword.tmpl</code></td>
914 <td><code>preview.tmpl</code></td>
918 <td><code>rdiff.tmpl</code></td>
922 <td><code>register.tmpl</code></td>
926 <td><code>registernotify.tmpl</code></td>
930 <td><code>rename.tmpl</code></td>
931 <td> Doing a new topic rename, user chooses web & topic </td>
934 <td><code>renamebase.tmpl</code></td>
935 <td> Used by other rename templates </td>
938 <td><code>renameconfirm.tmpl</code></td>
939 <td> Confirming a pre-specified rename e.g. when undoing a rename </td>
942 <td><code>renamerefs.tmpl</code></td>
943 <td> Rename done, still some references to change (topcis were previously locked) </td>
946 <td><code>search.tmpl</code></td>
950 <td><code>searchbookview.tmpl</code></td>
954 <td><code>searchmeta.tmpl</code></td>
958 <td><code>searchrenameview.tmpl</code></td>
959 <td> Used by <code>rename</code> to list references to topic being renamed </td>
962 <td><code>twiki.tmpl</code></td>
966 <td><code>view.plain.tmpl</code></td>
970 <td><code>view.print.tmpl</code></td>
974 <td><code>view.tmpl</code></td>
979 -- [[MikeMannix]] - 29 Aug 2001