]> CyberLeo.Net >> Repos - SourceForge/phpwiki.git/blob - INSTALL
Activated Id substitution for Subversion
[SourceForge/phpwiki.git] / INSTALL
1 REQUIREMENTS
2
3 PhpWiki requires a web server with at least PHP version 4.0.6.
4 PhpWiki was tested 4.0.4pl1 and 4.0.5 also, but several bugs in these 
5 releases make them unstable for production sites.
6
7 Due to a security issue found in all versions of PHP (including 3.x
8 and 4.x), all users of PHP are strongly encouraged to either upgrade
9 to at least PHP 4.2.2, or install a patch available for PHP 3.0.18, 
10 4.0.6 and 4.1.0/4.1.1. Visit <http://www.php.net> for downloads and 
11 information. 
12 Larger phpwiki installations (big pages or > 500 pages) 
13 with PHP <= 4.3.9 suffer from a PCRE memory problem and might not 
14 work with the 8MB default PHP memory limit.
15
16 You need the Perl regular expressions package compiled in; this is the
17 default for PHP, so you probably have it. If you don't you'll see an
18 error like "function preg_replace() not defined."
19
20 PHP must also be compiled with support for the type of database you
21 want to use, i.e. --with-gdbm, --with-db2, --with-db3, --with-msql,
22 --with-pgsql. (With PHP4 MySQL support is always enabled. With PHP5 
23 sqlite instead). Consult the PHP installation manual for specific 
24 installation and configure options. 
25 <http://www.php.net/manual/en/installation.php>
26
27 Since version 1.3.0 PhpWiki uses the 'DB.php' from PEAR, a database
28 abstraction layer which is part of PHP. PhpWiki version 1.3.3 and later
29 includes the necessary PEAR libraries and will use it if your system 
30 PEAR library can not be found. For more information about PEAR 
31 see <http://pear.php.net/>.
32 PhpWiki version 1.3.7 and later includes the ADODB libraries and will
33 use it for DATABASE_TYPE=ADODB. ADODB has more features, can use yet
34 unsupported backends out of the box, and this is where SQL development
35 happens. ADODB improvements are then backported to the stable PEAR
36 backend (which often suffers from bad upstream PEAR libraries) and to
37 PDO for php5.
38
39
40 QUICK START INSTRUCTIONS
41
42 Copy 'config/config-dist.ini' to 'config/config.ini' and edit the 
43 settings in 'config/config.ini' to your liking.
44
45 By default PhpWiki is configured to use a dba database. If there
46 is no dba on your system, you will see an error like this the first
47 time you try to use PhpWiki:
48  
49     "Fatal error: Call to undefined function: dba_open() in 
50      phpwiki/lib/DbaDatabase.php on line 32"
51
52 To correct this you will have to check the available dba handlers 
53 (default: db3 for Windows, otherwise gdbm), install the dba extension 
54 or preferably an sql-compatible database such as MySQL or PostgreSQL 
55 and make the necessary configuration changes to 'lib/config/config.ini'.
56
57
58 INSTRUCTIONS
59
60 Below are the instructions for the "out of the box" installation,
61 which uses DB files. If you are using a relational database like
62 MySQL, see the INSTALL file for your database in the 'doc/' directory
63 under the root of your PhpWiki installation.
64
65
66 0. INSTALLATION
67
68 Untar / gzip this file into the directory where you want it to
69 live. That's it.
70
71 bash$ gzip -d phpwiki-X.XX.tar.gz
72 bash$ tar -xvf phpwiki-X.XX.tar
73
74 In the config subdirectory copy 'config-dist.ini' to 'config.ini' and 
75 edit the settings in 'config.ini' to your liking.
76
77
78 1. CONFIGURATION
79
80 The first time you run this Wiki it will load a set of basic pages
81 from the 'pgsrc/' directory. These should be enough to get your Wiki
82 started.
83
84 PhpWiki will create some DBA files in '/tmp'. They contain the pages
85 of the live site, archived pages, and some additional information.
86
87 If you don't want the DBA files to live in '/tmp' you must make sure
88 the web server can read/write to your chosen location.  It's probably
89 a bad idea to leave it in '/tmp', so change it in 'config/config.ini'.
90
91 WARNING: On many systems, files in '/tmp' are subject to periodic
92          removal. We very strongly advise you to move the files to
93          another directory.
94
95 For example, create a subdirectory called 'pages' in the 'phpwiki'
96 directory which was made when you untarred PhpWiki. Move the DBA files
97 there. The files should already have proper rights and owners, as they
98 were created by the web server. If not, change the permissions
99 accordingly so your web server can read / write the DBA files. Note
100 that you must be root to move files created by the web server.
101
102 Next you must ensure that the web server can access the 'pages'
103 directory and can create new files in it. For example, if your web
104 server runs as user 'nobody', give the web server access like this:
105
106 bash$ chown nobody:youraccount pages
107 bash$ chmod 755 pages
108
109 This is necessary so that the server can also create / set the
110 database lock file (PHP has a built in locking mechanism for DBA file
111 access).  Or if you're really lazy and don't worry much about
112 security:
113
114 bash$ chmod 777 pages
115
116 Note: This is insecure. The proper way is to let the directory be
117       owned by the web servers GUID and give it read and write access.
118
119
120 2. ALLOWING EMBEDDED HTML
121
122 PhpWiki ships with this feature disabled by default. According to
123 CERT, malicious users can embed HTML in your pages that allow pure
124 evil to happen:
125
126     <http://www.cert.org/advisories/CA-2000-02.html>
127
128 Set the ENABLE_RAW_HTML to true in ' config/config.ini' to allow
129 embedded HTML, but you should NEVER do this if your Wiki is publicly
130 accessible!
131
132 3. ETC
133
134 Installing PHP is beyond the scope of this document :-) You should
135 visit <http://www.php.net/> if you don't have PHP. Note that you
136 should have the web server configured to allow index.php as the root
137 document of a directory.
138
139 4. PATCHES
140
141 Post patches to:
142     <http://sourceforge.net/tracker/?func=add&group_id=6121&atid=306121>
143
144 5. BUGS
145
146 Post bugs to:
147     <http://sourceforge.net/tracker/?func=add&group_id=6121&atid=106121>
148
149 6. SUPPORT
150
151 For support from the PhpWiki team and user community post to:
152     <phpwiki-talk@lists.sourceforge.net>
153
154 You can join this list at:
155     <http://lists.sourceforge.net/lists/listinfo/phpwiki-talk>
156
157 FIN
158
159 $Id$