Troubleshooting Tiki on IIS
GD library in Windows
Many functionalities of Tikiwiki rely on the presence of a graphical library - gd.
Specifically Image Galleries and graphs in Statistics.
Some binary distributions of PHP for Windows contain this library, but some don't. Make sure you check the extensions directory and see if you can find a library called php_gd2.dll. If you don't see it there, download the full package from php.net (it's about 6 megs) and copy the dll into your extensions directory.
Then edit your php.ini, and uncomment the following line:
;extension=php_gd2.dll
to look like:
extension=php_gd2.dll
Save the ini file, and check out the phpinfo page in your admin menu.
It should show a section called GD.
userpageterris — Doesn't work for me. I use ISAPI. Any ideas?
pj — Doesn't work for me either. I also use ISAPI. Had to put some images directly on the file-system and not in the galleries (i.e. in the database). Then it worked to load the images.
The quickest way to check out if everything went OK is to load the usage chart from /tiki-usage_chart.php
If everything's OK, you'll see a bar chart.
If not, you'll get an error message, probably
Fatal error: Call to undefined function: imagecreate() in /home/xyz/lib/phplot.php on line 203
Installation bugs
Error message :
Notice: Undefined index: SCRIPT_FILENAME in directory/tiki-setup.php on line 129
cf. Installation : IIS (Windows) glitch
MySQL Client Error
Error Message:Client does not support authentication protocol requested by server; consider upgrading MySQL client
This happened to me with MySQL 5.03 and PHP 4.3.10. The problem is the
password hashing algorhythm changed. You can make MySQL use the old
one with this command run from the Query Browser.
Note: "TikiPassword" is whatever the password you set was.
SET PASSWORD FOR 'tikiuser'@'hostname' = OLD_PASSWORD('TikiPassword');
Fix Tiki Batch File
For some unknown reason, mysql (I use 4.0.15) sometimes corrupts itself. When you attempt to access Tiki Wiki you will get the error:
Warning: MYSQL error: DB Error: unknown error in query:
select value from tiki_preferences where name='rememberme'
in C:\tikiwiki_1.7.1.1\lib\tikilib.php on line 101
textThis fixtiki.bat script will fix the problem. You will need to alter line 2 depending on where you have installed mysql and the Tiki database.
net stop mysql cd /d c:\mysql\data\tiki del *.tmd \mysql\bin\myisamchk *.myi \mysql\bin\myisamchk -r *.myi net start mysql
Using LDAP
This thread describes how to configure LDAP. An anonymous ldap_bind will not work for all Active Directories.
In lib/userslib.php, I added the following two lines:
$options["adminuser"] = $tikilib->get_preference("auth_ldap_adminuser", ""); $options["adminpass"] = $tikilib->get_preference("auth_ldap_adminpass", "");
In lib/pear/Auth/Container/LDAP.php, I changed the lines 188-191 to be:
// bind anonymously for searching if ($this->options['adminuser']) { $bindresult = @ldap_bind($this->conn_id, $this->options['adminuser'], $this->options['adminpass']); } else { $bindresult = @ldap_bind($this->conn_id); } if ($bindresult == false) { return PEAR::raiseError("Auth_Container_LDAP: Could not connect and bind to LDAP server.", 41, PEAR_ERROR_DIE); }
Robajz aded one more line to make it work (windows 2003 active directory).
In lib/userslib.php, I added ldap_set_opt after about 185 where another ldap_set_opt is (according to 1.9)
@ldap_set_option($this->conn_id, LDAP_OPT_REFERRALS, 0);