Feedback

Your feedback is welcome to help make these installation instructions more useful, understandable, and complete. If you have any suggestions, criticisms, questions, or other comments, please send them to mailto:tavi-devel@lists.sourceforge.net. Thanks!!

WikkiTikkiTavi - Installation

(See below, under "WikkiTikkiTavi - Upgrading", if you are upgrading an existing 'Tavi installation.) See http://tavi.sourceforge.net/ for more detailed instructions dealing with virtual hosts, 'Tavi templates, URL rewriting, etc.

  1. Choose a location in which to install 'Tavi. You do not need to install 'Tavi under your webspace; in fact, it is recommended that you do not do so. While there are no known security exploits in 'Tavi 0.21, it is best for security purposes to leave as few scripts exposed to the web as possible.
    Additionally, if you install 'Tavi in a central location, you can use it once for multiple wikis on your web server. This makes administration of virtual hosts or wiki farms much simpler. Upgrading to a later version of 'Tavi also is simplified, as you can upgrade multiple wikis in one step.
    For the sake of example, the following assumes that you have chosen to install 'Tavi in the following directory:
    /usr/local/lib/tavi/
    Alternatively, you can install 'Tavi directly in your webspace and use it without complication; there is no reason that 'Tavi must be installed in a central location, although it is recommended.
  2. Download the 'Tavi archive into the installation directory. You can find it at http://prdownloads.sourceforge.net/tavi/tavi-0.23.tar.gz.
  3. Unpack the archive in the installation directory. It should create a subdirectory named 'tavi-0.23'.
    ungzip it: gzip -d tavi-0.23.tar.gz
    untar it: tar -xf tavi-0.23.tar
  4. [Not necessary, but recommended.]
    Create a symbolic link in the installation directory that points to the archive subdirectory. For example, create a symbolic link in /usr/local/lib/tavi/ called 'tavi-current', that points to '/usr/local/lib/tavi/tavi-0.23'. This allows your wikis to point to 'tavi-current', allowing you to automatically upgrade them to a newer release by simply pointing 'tavi-current' to the new release's location.
  5. Ensure that you have MySQL installed, along with the perl-DBI package.
  6. Create a database for your wiki: mysqladmin create mywikidatabasename
  7. Now add a user for this database. Our new user has wikiuser as name and wikipassword for password:
    First, from the Linux prompt, type mysql -uroot -p
    Then type grant all on mywikidatabasename.* to wikiuser@localhost identified by "wikipassword";
    And finish with quit
    NOTE: it must be possible to do this with a single command line, but I wouldn't know how to do that - !Valentijn
    Single command line (May 22, 2003 - trevor@unixforever.net):
    echo "grant all on mywikidatabasename.* to wikiuser@localhost identified by 'wikipassword'" | mysql -u root -p
    Or:
    mysql -u root -prootpasswort -e "grant all on mywikidatabasename.* to wikiuser@localhost identified by 'wikipassword'"
  8. Run install/create-db.pl to create the database tables for your wiki:
    (if you do not have PERL >> TaviNoPerl)
    Su primer parámetro debe ser el nombre de la (ya creada) base de datos MySQL donde se crearán las tablas. Si aun no has creado la base de datos, debesrás hacerlo antes de correr el script.
    Its second and third parameters are the user name and password to use to access the database.
    Optionally, you can include a fourth parameter to specify a prefix to be prepended to the table names. If you have access to only one MySQL database, you can use this feature to install multiple wikis in the same database.
    También puedes incluir in quinto parámetro para especificar el nombre del host o la direcciónIP de la base de datos del servidor, si no es el host local.
    Ejemplos:
    perl ./create-db.pl wiki joe passwd
    perl ./create-db.pl project sally pass wiki_ database.example.com
    perl ./create-db.pl common jim key "" mysql.example.com
    If you however find yourself in a situation you cannot use a perl script, you could consider using RickVanLieshout/InitDatabasePHPScript
    If you get an error complaining about a missing perl module DBD::mysql, then you can probably use the perl cpan tool to install it, e.g.:
    $ cpan
    > install DBD::mysql
    > quit
  9. In the install/ directory, run the "configure.pl" script to generate a configuration file for your wiki. It takes one parameter, the location of the configuration file to be generated. For example:
    perl ./configure.pl /home/u/user12/tavi/config.php
    perl ./configure.pl ../config.php
    Once again, the filename argument to the configure.pl script is just a string of the file that will be created (do not go looking for it in the distribution ;) ). You will be prompted for such things as the URL to the wiki script, the name of your wiki, database information, etc.
    As with the 'Tavi source, it is recommended that you keep your configuration file in a location that cannot be accessed from the web.
    You may wish to double-check the 'config.php' file that was created by the configuration script, to make sure that the settings are correct.
    If you installed 'Tavi in your webspace, then skip this step, since index.php is already accessible from the web.
    1. Now you have to create an entry point to your wiki. Choose a directory in your webspace to be the base point for your wiki. For sake of example, we will use /home/joe/public_html/mywiki/.
    2. Create a subdirectory named 'admin/' in this directory. E.g., /home/joe/public_html/mywiki/admin.
    3. In the base directory, create a symbolic link to the index.php in the 'Tavi installation. For example, create /home/joe/public_html/mywiki/index.php that is a link to /usr/local/lib/tavi/tavi-current/index.php. I.e. ln -s /usr/local/lib/tavi/tavi-current/index.php /home/joe/public_html/mywiki/index.php
    4. In the admin/ subdirectory, create a symbolic link to the index.php in the admin subdirectory in the 'Tavi installation. For example, create /home/joe/public_html/mywiki/admin/index.php that is a link to /usr/local/lib/tavi/tavi-current/admin/index.php. I.e. ln -s /usr/local/lib/tavi-current/admin/index.php /home/joe/public_html/mywiki/admin/index.php
    5. NOTE Installing Tavi under MS-Windows:.
      There is an "error" in the \tavi\install\configure.pl The section system Clear screen is different on W32 and Unix-systems "cls" vs "Clear" The right command under Windows is "cls" and if running unix/linux the command "clear".
      Change every places where the configure.pl says "clear" to "cls" if you're running on MS-Windows-systems
      Leave it as "clear" if you're running 'nix-systems.
  10. Configure your script so that it can access the 'Tavi scripts and so that it can access your configuration file. If you have installed 'Tavi in your webspace, and you have placed the config.php file in the root of that location, then you can skip this step. Otherwise, continue:
    1. Locate the directories for your 'Tavi installation and for your config.php file. For example, they might be:
      /usr/local/lib/tavi/tavi-current
      /home/joe/tavi/mywiki
    2. If you are running PHP as mod_php under Apache, add the directories to the .htaccess file in the directory where the wiki resides. Separate them with colons:
      php_value include_path "/home/joe/tavi/mywiki:/usr/local/lib/tavi/tavi-current"
      NOTE : If using .htaccess doesn't seem to be working for you, try altering your httpd.conf file instead by adding this:
      <Directory /home/joe/tavi/mywiki/>
      php_value include_path ".:/usr/local/lib/tavi/tavi-current"
      </Directory>
    3. If, instead, you are running PHP as a CGI program, then you will have to similarly change the include_path in your php.ini file to point to the given directories. (To prevent this from affecting your other PHP scripts, see CGI Wrapping.)
  11. [Optional, but recommended.]
    Turn off register_globals for 'Tavi. While there are no known security exploits in 'Tavi 0.21, this is generally a good idea to make your scripts less liable to undiscovered exploits.
    1. If you are running PHP as mod_php under Apache, add the following line to the .htaccess file in the directory where the wiki resides:
      php_flag register_globals off
    2. If, instead, you are running PHP as a CGI program, then you will have to similarly change the register_globals setting in your php.ini file. (To prevent this from affecting your other PHP scripts, see CGI Wrapping.)
  12. Visit your wiki and start creating pages!
    Apart from your wiki's home page, you should also create RecentChanges, containing (at minimum) a wildcard subscription list like so:
    [[! *]]
    You should also create some InterWiki entries. First, make your own page called "InterWiki", then populate it with InterWiki entries. See InterWiki for help on the format of these entries and a starting population.
  13. Set $Charset in config.php file to indicate the character set used for storage, editing, and display in your wiki.(ex: $Charset = "EUC-KR"; ) see also:UTF-8 text
  14. Advertise your wiki. Feel free to put a link to your wiki on TaviSites.
  15. Read more about using and administering 'Tavi at TaviDocumentation.

Advanced

WikkiTikkiTavi - Upgrading

'Tavi version 0.21 has rearranged its configuration somewhat, to allow for more effortless upgrades in the future.

Unfortunately, this means that upgrading from version 0.20 to version 0.21 will not quite be effortless. Fortunately, no database changes need to be made; the only changes are in configuration.

config.php is no longer in the distribution. Instead, you create config.php when you install 'Tavi, and it is never overwritten, even if you later upgrade to a newer release.

The simplest way to upgrade to 'Tavi 0.21 is to scrap your existing config.php and use install/configure.pl to generate a new one for you, as described above in "WikkiTikkiTavi - Installation". It will prompt you for all the relevant configuration values.

If you have been using a customized template, we recommend that you place it in a directory other than template/. This will prevent it from being overwritten when you upgrade now (or later). (However, you may wish to consider using the new template as a starting point for your custom template, as it has been tweaked to be compliant with the XHTML-Strict standard.)

I dont understand all of this.

This needs to be updated to new versions.

Gotta read a book to install this thing o.O