Windows IIS Install
This is an installation guide. This page needs to be refactored
Tikiwiki 19 on IIS
I am developing a complete set of instructions for Tiki 1.9 that will be available when 1.9 comes out.
These are the steps I used when I installed a fresh copy of Tiki19 on IIS 5 and IIS 6.
I followed the instructions on the IISInstall page when I first started using Tiki back at version 1.6, so be sure that you follow them if this is your first time setting up Tiki on your system. I've included a portion of the code samples from the IISInstall page below.
STEP 1
Download and unpack the contents of the 19 distribution into a folder.
STEP 2
Create the IIS virtual directory for the IIS server, pointing to the directory where Tiki19 was placed.
STEP 3
Edit the tiki-install.php and tiki-setup.php files accordingly:
- Edit c:\tikiwiki_*\tiki-install.php (the actual directory depends on which version you have installed)
- You will need to use a UNIX-linefeed-friendly editor. I use Crimson Editor
- Change the line: $docroot = dirname($_SERVER['PATH_TRANSLATED']);
- To: $docroot = dirname('c:/tikiwiki_*'); // Specify the real directory based on the Tikiwiki version
- Edit c:\tikiwiki_*\tiki-setup.php (the actual directory depends on which version you have installed)
- You will need to use a UNIX-linefeed-friendly editor. I use Crimson Editor
- Change the line: $docroot = dirname($_SERVER['PATH_TRANSLATED']);
- To: $docroot = dirname('c:/tikiwiki_*'); // Specify the real directory based on the Tikiwiki version
- Change
// Fix IIS servers not setting what they should set
if(!isset($_SERVER['QUERY_STRING']))
$_SERVER['QUERY_STRING']='';
if(!isset($_SERVER['REQUEST_URI'])||empty($_SERVER['REQUEST_URI']
))
{
$_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF'] . '/' .
$_SERVER['QUERY_STRING'];
}
To:
// Fix IIS servers not setting what they should set:
if (TikiSetup::os() == "windows")
{
$uri = $_SERVER["REQUEST_URI"];
$len = strlen($uri);
if (substr($uri, $len -1) == "/")
{
$uri = substr($uri, 0, $len -1);
}
else
{
$uri = substr($uri, 0, $len - strlen($_SERVER["QUERY_STRING"]) -1);
$uri = $uri . "?" . $_SERVER["QUERY_STRING"];
}
$_SERVER["REQUEST_URI"] = $uri;
}
STEP 4
Search the tiki-setup.php file for the following line:
Before the change Copy to clipboard $smarty->assign('feature_bidi', $feature_bidi);
Edit it to look like that:
After the change Copy to clipboard $feature_bidi = 'n';
$smarty->assign('feature_bidi', $feature_bidi);
STEP 5
Search the tiki-setup.php file for the following: $docroot/$dir/$tikidomain
and comment out the section of code:
// foreach ($dirs as $dir) {
// if (!is_dir("$docroot/$dir/$tikidomain")) {
// $errors .= "The directory '$docroot/$dir/$tikidomain' does not exist.\n";
// } else if (!is_writeable("$docroot/$dir/$tikidomain")) {
// $errors .= "The directory '$docroot/$dir/$tikidomain' is not writeable by $wwwuser.\n";
// }
// }
STEP 6
Open up the Tiki web site from a browser to begin the setup process.
older version (circa 1.7)
-
- See UpgradeTo18 for upgrading from 1.7 to 1.8
- If you are installing Tikiwiki 1.9, see
Issues
- There's an error message after adding a blog, but the blog is added correctly
- Don't use the Mozilla theme or you'll be sorry
- Office documents don't properly download from IE. Right click on the attachment and choose "Save Target As..."
- You'll get an error message if you click on "last forum topics" on the right and try to edit the post
- Renavigate to the post using the forum list and then edit the post
- Reading a forum thread that doesn't have any comments results in the right sidebar being displayed underneath the left sidebar
These issues are relating to Internet Explorer usage, not IIS specifically - Damian
Installing IIS
- Go to the control panel, add/remove programs, and click the add/remove Windows Components button
- Select IIS
- You may need to reboot
- Go to the start menu, followed by Windows Update
- Install all service packs and critical updates
Installing MySQL
- Download MySQL
- How to install mySQL on Windows
- Install MySQL as a service as described in the above link
- By default, it is possible to log into MySQL with no username or password. I don't know how to change this behavior, but it's not a recommended configuration.
Installing TikiWiki
If you are installing Tiki 1.8 or later, don't follow these instuctions and move to the next section
- Download TikiWiki
- Using WinZip, extract to c:\ using folder names
- Versions prior to 1.8 only Enter the following from the command line:
- cd /d c:\tikiwiki_* (the actual directory depends on which version you have installed)
- mkdir templates_c
- Go to Windows Explorer and modify the security for the folder c:\tikiwiki_*\templates_c
- Allow write access for the users whose names start with IUSR and IWAM
- Note: 2004-10-01 Installed current stable version (1.7.8) and also had to allow write access to the tikiwiki base directory.
- Versions 1.8 and later only Enter the following from the command line:
- cd /d c:\tikiwiki_* (the actual directory depends on which version you have installed)
- cd lib
- mkdir \php4
- xcopy /i /e pear \php4
- Edit c:\tikiwiki_*\tiki-install.php (the actual directory depends on which version you have installed)
- You will need to use a UNIX-linefeed-friendly editor. I use Crimson Editor
- Change the line: $docroot = dirname($_SERVER['SCRIPT_FILENAME']);
- To: $docroot = dirname('c:/tikiwiki_*'); // Specify the real directory based on the Tikiwiki version
- Edit c:\tikiwiki_*\tiki-setup.php (the actual directory depends on which version you have installed)
- You will need to use a UNIX-linefeed-friendly editor. I use Crimson Editor
- Change the line: $docroot = dirname($_SERVER['SCRIPT_FILENAME']);
- To: $docroot = dirname('c:/tikiwiki_*'); // Specify the real directory based on the Tikiwiki version
- Change
// Fix IIS servers not setting what they should set (ay ay
IIS, ay ay)
if(!isset($_SERVER['QUERY_STRING']))
$_SERVER['QUERY_STRING']='';
if(!isset($_SERVER['REQUEST_URI'])||empty($_SERVER['REQUEST_URI']
))
{
$_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF'] . '/' .
$_SERVER['QUERY_STRING'];
}
To:
// Fix IIS servers not setting what they should set (ay ay IIS, ay ay)
if (TikiSetup::os() == "windows")
{
$uri = $_SERVER["REQUEST_URI"];
$len = strlen($uri);
if (substr($uri, $len -1) == "/")
{
$uri = substr($uri, 0, $len -1);
}
else
{
$uri = substr($uri, 0, $len - strlen($_SERVER["QUERY_STRING"]) -1);
$uri = $uri . "?" . $_SERVER["QUERY_STRING"];
}
$_SERVER["REQUEST_URI"] = $uri;
}
Installing PHP 4.x
There are two ways to use PHP. CGI or ISAPI.
ISAPI
CGI
- Download and run the setup program
- Install PHP to c:\php
- Ignore errors regarding "missing OCX"
- Run Start/Program Files/Administrative Tools/Internet Services Manager
- Navigate to your web site
- Right-click on Default Web Site and select New/Virtual Directory
- Directory name: tiki
- Directory location: c:\tikiwiki_* (actual directory depends on which version you installed)
- Check the "Execute" check box
- Right-click on Default Web Site again
- Go to the Home Directory Tab
- Click the Configuration... button
- Click Add
- Executable: c:\php\php.exe
- Extension: .php
Both
- Modify c:\winnt\php.ini
- Search for "SMTP" and enter your SMTP server and return email address
Testing PHP
- This page contains a simple PHP script. Copy everything between < php and ? > (inclusive) to the file c:\tikiwiki_*\test.php (actual directory depends on which version you installed)
- Fire up your browser and go to http://localhost/tiki/test.php
- You should see a page that contains all the holidays in the current year — if not, review this documentation with the actual steps you performed
Configuring and Testing TikiWiki
- Open a browser and go to http://localhost/tiki/tiki-install.php
- The password for the admin account is 'admin'
- Create a tiki database
- Go to http://localhost/tiki/index.php
- Log in as admin/admin and promptly change the password
- It is recommended that you delete c:\tikiwiki_*\tiki-install.php or move it to a folder that isn't accessible via the web
Enjoy Using TikiWiki!
please also see:
IisTroubleshooting
IisWorkarounds
|