====== DokuWiki with IIS ====== This is for people who want to use [[:DokuWiki]] on a Windows machine with IIS webserver (Windows 2000, Windows XP or Windows Server 2003, 2008) ===== IIS6 and Prior ===== === Install PHP === * New DL-Link for PHP under IIS (auto-install): [[http://www.iis-aid.com/iis_aid_php_installer|IIS-Aid]] * If you want to do an offline install and want to use fast-cgi, install the addin before you install php: [[http://www.iis.net/extensions/FastCGI|IIS-FastCGI]] (Just install and leave the setting 'download and install FastCGI' and it will auto-detect fast-cgi on your System) * Use the windows install from PHP's website. See the [[http://www.php.net|PHP site]] for installers or complete packages. PHP can run either as CGI-application or as an ISAPI extension. As an alternative, see the [[http://php.iis.net/| Microsoft IIS Site]] for automatic setup of PHP. * If you're using the [[http://www.php.net/manual/en/book.wincache.php|Windows Cache Extension for PHP]], you will need to disable the file caching functionality of the extension by setting ''[[http://www.php.net/manual/en/wincache.configuration.php#ini.wincache.fcenabled|wincache.fcenabled]]'' to ''0'' in ''php.ini''. === Configure IIS === - [[Unpacking|Extract]] the DokuWiki archive - Rename the ''dokuwiki-YYYY-MM-DD'' directory to ''dokuwiki'' (or whatever else you like) and move it to: * BEST Practice is to put it somewhere other than your "system" drive, "D:\dokuwiki". This is for security and mitigating the chance of a "disk full" condition on this drive. * Somewhere below your new webserver documentroot, e.g. ''c:\inetpub\wwwroot\dokuwiki'' * Secure all the directories as explained at the step 2 of the main [[:Install]] page. - Configure IIS (do __one__ of these): * Virtual-Directory in an existing website like "www.YourSite.com/wiki": so make sure to setup a Virtual Directory mapping to the wiki-code-location * New Website like "wiki.YourSite.com": so add an new website-Config in the IIS and set the Root-Directory to the wiki-code-location - Browse to the ''dokuwiki/'' directory and Check the properties of the ''data/'' folder. Ensure that the Internet Guest Account (IUSR_//computername//) or the appropriate web server account (or web server group like IIS_WPG) has Folder level "Write" permissions to the ''data/'' folder. - The wiki installer should now be available at %%http://localhost/dokuwiki/install.php%% **NOTES** * If you want to write the /conf/local.php (and you have to do that during the install-process!) ensure, that the Internet Guest Account (IUSR_//computername//) or the appropriate web server group (like IIS_WPG) has "Write" permissions to the ''conf/local.php'' file. * If you want to start your new DokuWiki, ensure, that the Internet Guest Account (IUSR_//computername//) or the appropriate web server group (like IIS_WPG) has "Write" permissions to the ''conf/local.php'' file. ===== IIS7 ===== === Install PHP === * Use the windows install from PHP's website. See the [[http://windows.php.net/download/|PHP site]] for installers or complete packages. There are 2 installers, choose the "thread safe" and the "non-thread safe" installer. It is recommended that you use a non-thread safe build of PHP with IIS 7 FastCGI. A non-thread safe build of PHP provides significant performance gains over the standard build by not doing any thread-safety checks, which are not necessary, since FastCGI ensures a single threaded execution environment. * PHP can run either as CGI-application or as an ISAPI extension. These instructions are for Fast-CGI as it is quicker and more stable than ISAPI. Even Microsoft instructs to install using Fast-CGI, even though they invented ISAPI. See the [[http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis-7/|How To]] === Configure IIS === - [[Unpacking|Extract]] the DokuWiki archive - Rename the ''dokuwiki-YYYY-MM-DD'' directory to ''dokuwiki'' (or whatever else you like) and move it to: * __BEST__ practice is to put it somewhere other than your system drive(e.g. ''D:\dokuwiki''). This is for security and to mitigate the chance of a disk full condition on this drive. * However you can also put it somewhere below your new webserver documentroot, (e.g. ''c:\inetpub\wwwroot\dokuwiki'') - Secure all the directories as explained at the step 2 of the main [[:Install]] page. * You will have to give the IUSR account read & execute permissions to the website, as it is not there by default. * In IIS Manager left click the site name * Click "Edit Permissions" in the Actions pane OR right click and choose "Edit Permissions" from the shortcut menu. * Click the Security tab * Click the Edit button * Click the Add button * Click the Locations button and choose the local server name * Now type in IUSR and click OK, and OK again. - Configure IIS (do __one__ of these): * Virtual-Directory in an existing website like "www.YourSite.com/wiki": so make sure to setup a Virtual Directory mapping to the wiki-code-location * New Website like "wiki.YourSite.com": so add an new website-Config in the IIS and set the Root-Directory to the wiki-code-location - Browse to the ''dokuwiki/'' directory and Check the properties of the ''data/'' folder. Ensure that the Internet Guest Account(IUSR), the appropriate web server account or Server Group(IIS_IUSRS) has Folder level "Write" permissions to the ''data/'' folder. See above for instructions. - Browse to the ''dokuwiki/'' directory and Check the properties of the ''conf/'' folder. Ensure that the Internet Guest Account(IUSR), the appropriate web server account or Server Group(IIS_IUSRS) has Folder level "Write" permissions to the ''conf/'' folder. See above for instructions. - The wiki installer should now be available. Depending on how you installed it you can find it at %%http://localhost/dokuwiki/install.php%% OR %%http://(wiki site name)/install.php%% - Browse to the ''dokuwiki/'' directory and delete the install.php file.