
C:\. Extracting the files will create a folder called C:\php-4.3.7RC1-Win32. Rename the folder to C:\php.C:\php\php4ts.dll to C:\Windows\System32.C:\php\php-ini-recommended to C:\Windows. Rename php-ini-recommended to php.iniphp.ini to EVERYONE: Read & Execute, Read. Ignore any warning you might see when you apply the permissions.C:\Windows\php.ini for editing
extension_dir = ".\extensions"browscap = line and change it to read: browscap = c:\windows\system32\inetsrv\browscap.inicgi.force_redirect = line and change it to read: cgi.force_redirect = 0
upload_tmp_dir = whatever folder you like
upload_max_filesize = whatever size you like
_
I use C:\temp and 64M respectively. The reason I set this directive is because if its not set PHP uses %TEMP% which is C:\Windows\Temp. I like to keep temp stuff clear of my %SYSTEMROOT%. Alternately you could change the %TEMP% and %TMP% system variables and leave this directive commented out. 64 megabytes might seem a bit excessive, but I run a small installation so I dont worry about this as much as someone running a larger installation.
C:\Inetpub. That way any website created under that folder will have PHP capabilities. I left this directive blank.php.ini file.libmcrypt.dll. (Refer to http://www.php.net/mcrypt\). The dll is available at http://ftp.emini.dk/pub/php/win32/mcrypt/. Browse to this address, right-click on libmcrypt.dll and choose Save Target as
Save the dll in C:\php\dllsBefore you start this process I recommend adding C:\php;C:\php\dlls to the system path. From what Ive read about installing PHP on IIS6 this is a preference rather that a must. I added it for two reasons. The first is convenience; the second and more important is because there are a number of files in the dlls folder that are required to run the PHP extensions used by Horde. If the dlls folder is not in the path you have to copy the necessary dll to c:\Windows\system32 folder. So to avoid having to find and copy the appropriate dlls I strongly recommend adding these entries into the system path.
PHP in the Extension name: box.C:\php, change the Files of type: box to read CGI exe files (*.exe). Double-click on php.exe. Finally click the "OK" button twice.There is a decision to make at this point. We can add PHP functionality to the Web Sites folder or we can simply add it to the Default Web Site. The benefit to adding PHP to the Web Sites folder is that any new web site will inherit the settings. Conversely, if you choose not to configure the Web Sites folder to use PHP then youll have to add the functionality to each new web site as you create it. Ill cover both options here.
C:\php, change the Files of type: box to read CGI exe files (*.exe). Double-click on php.exe.net stop iisadmin <enter>
The following services are dependent on the IIS Admin Service service.
Stopping the IIS Admin Service service will also stop these services.
World Wide Web Publishing Service
HTTP SSL
Do you want to continue this operation? (Y/N) [N]:
net start w3svc <enter>
<? phpinfo(); ?>
C:\Inetpub\wwwroot\phptest.php _
PHP Version 4.3.7RC1
System
Windows NT HATRICK 5.2 build 3790
Build Date
May 25 2004 15:27:35
Server API
CGI/FastCGI
Virtual Directory Support
enabled
Configuration File (php.ini) Path
C:\WINDOWS\php.ini
PHP API
20020918
PHP Extension
20020429
Zend Extension
20021010
Debug Build
no
Thread Safety
enabled
Registered PHP Streams
php, http, ftp, compress.zlib
This program makes use of the Zend Scripting Language Engine:
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
C:\phpgo-pear.bat <enter>. Youll see: _
Welcome to go-pear!
Go-pear will install the 'pear' command and all the files needed by
it. This command is your tool for PEAR installation and maintenance.
Go-pear also lets you download and install the PEAR packages bundled
with PHP: DB, Net_Socket, Net_SMTP, Mail, XML_Parser, PHPUnit-0.6.2.
If you wish to abort, press Control-C now, or press Enter to continue:
HTTP proxy (http://user:password@proxy.myhost.com:port), or Enter for none:
Below is a suggested file layout for your new PEAR installation. To
change individual locations, type the number in front of the
directory. Type 'all' to change all of them or simply press Enter to
accept these locations.
1. Installation prefix : C:\php
2. Binaries directory : $prefix
3. PHP code directory ($php_dir) : $prefix\pear
4. Documentation base directory : $php_dir\docs
5. Data base directory : $php_dir\data
6. Tests base directory : $php_dir\tests
7. php.exe path : C:\php\cli\php.exe
1-7, 'all' or Enter to continue:
The following PEAR packages are bundled with PHP: DB, Net_Socket, Net_SMTP,
Mail, XML_Parser, PHPUnit-0.6.2.
Would you like to install these as well? [Y/n] :
Loading zlib: ok
Using local package: PEAR.............ok
Using local package: Archive_Tar......ok
Using local package: Console_Getopt....ok
Using local package: XML_RPC..........ok
Bootstrapping: PEAR...................(local) ok
Bootstrapping: Archive_Tar............(local) ok
Bootstrapping: Console_Getopt.........(local) ok
Using local package: DB...............ok
Using local package: Net_Socket.......ok
Using local package: Net_SMTP.........ok
Using local package: Mail.............ok
Using local package: XML_Parser.......ok
Downloading package: PHPUnit-0.6.2....ok
Extracting installer..................ok
install ok: PEAR 1.3.1
install ok: Archive_Tar 1.1
install ok: Console_Getopt 1.2
install ok: XML_RPC 1.1.0
install ok: DB 1.6.1
install ok: Net_Socket 1.0.1
install ok: Net_SMTP 1.2.5
install ok: Mail 1.1.2
install ok: XML_Parser 1.0.1
install ok: PHPUnit 0.6.2
******************************************************************************
WARNING! The include_path defined in the currently used php.ini does not
contain the PEAR PHP directory you just specified:
<C:\php\pear>
If the specified directory is also not in the include_path used by
your scripts, you will have problems getting any PEAR packages working.
Would you like to alter php.ini <C:\WINDOWS\php.ini>? [Y/n] :
php.ini <C:\WINDOWS\php.ini> include_path updated.
Note: this entry is added at the very bottom of your php.ini.
Current include path : .;c:\php4\pear
Configured directory : C:\php\pear
Currently used php.ini (guess) : C:\WINDOWS\php.ini
Press Enter to continue:
The 'pear' command is now at your service at C:\php\pear.bat
* WINDOWS ENVIRONMENT VARIABLES *
For convenience, a REG file is available under C:\php\PEAR_ENV.reg .
This file creates ENV variables for the current user.
Double-click this file to add it to the current user registry.
Press any key to continue . . .
C:\php and double-click on PEAR_ENV.reg to import the registry information.C:\php, if not CD to that directory):
pear install log <enter>. Ignore the message: Optional dependencies: 'sqlite' PHP extension is recommended to utilize some features.pear install mail_mime <enter>pear install date <enter>pear install auth_sasl <enter>pear install net_url <enter>pear upgrade net_socket <enter>pear install http_request <enter>pear install file <enter>pear install cache <enter>pear install net_dime-beta <enter>pear install soap-beta <enter>pear install xml_util <enter>pear upgrade xml_parser <enter>pear upgrade xml_serializer <enter>pear install services_weather <enter>pear upgrade-all <enter>mysql-4.0.20a-win.zip into a temporary folder.SETUP.EXE.C:\mysql\bin to the system path. I do this out of convenience. It makes it easier when you execute the Horde DB scripts.
[mysqld]
# set basedir to your installation path
basedir=C:\\mysql
# set datadir to the location of your data directory
datadir=C:\\mysql\\data
[WinMySQLAdmin]
Server=C:\\mysql\\bin\\mysqld-nt.exe
QueryInterval=10
basedir = to point to your installation point. Additionally you need to add a different path to the system path variable. If you want to store your databases in a different location, create that folder structure and change the datadir= to point to that location. Beware that if you want to use back slashes in your my.ini, you need to use \\ otherwise use forward slashes.C:\Windows\my.ini _
mysqld console <enter>
_
Of all the information displayed, youre only interested in weather or not MySQL reports:
mysqld: ready for connections.
Version: '4.0.20a-debug' socket: '' port: 3306
Press CTRL+C to stop MySQL
mysqld install <enter>
_
You should receive a Service successfully installed.
net start mysql <enter>
_
You should see: The MySQL service was started successfully.
mysql -u root <enter>
_
Youll get a mysql> prompt. Enter the following command replacing newpwd with whatever password you want to use:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpwd'); <enter>
_
You should see: Query OK, 0 rows affected (0.14 sec)
mysql user=root password=your_password mysql
_
You should see:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 5 to server version: 4.0.20a-debug
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
_
Type exit <enter> to close the MySQL shell.
Aspell-0-50-3-3-Setup.exe to start the Aspell installation wizard.Next > button twice.C:\aspell and click the Next > button.Aspell-en-0.50-2-3.exe to start the Aspell dictionary installation wizard.\aspell\bin\aspell config <enter> at a Command Prompt to see your current configuration.!WinCvs13b17-2.zip to a temporary folder.setup.exe to start the installation wizard.Next > buttonNext > button twice.Next > button. Im keeping things consistent so I changed the destination directory to C:\WinCVS.Next > button. As I said earlier, Im only interested in the command line version so I changed the installation to custom and unchecked everything except Core executable files and Command line client files.Next > buttonNext > button.The first item to consider is where to put your Horde installation. Like I said I have a relatively small installation, however I support two domains. Im writing this document while installing Horde on my development server which is much different than my production server. So Im going to choose C:\Inetpub\horde as my installation point. This seen the easiest place to put Horde, plus if you set the doc_root directive in your php.ini to C:\Inetpub, it keeps things simple. In any case, I think its important to give some thought to where you want Horde to live. Now
here we go
C:\Inetpub
SET CVSROOT=:pserver:cvsread@anoncvs.horde.org:/repository <enter>
\WinCVS\CVSNT\cvs login <enter>
_
Youll be prompted with:
Logging in to :pserver:cvsread@anoncvs.horde.org:2401:/repository
CVS password:
\WinCVS\CVSNT\cvs co -r HEAD horde <enter>
\WinCVS\CVSNT\cvs co -r HEAD framework <enter>
\WinCVS\CVSNT\cvs logout <enter>.Inetpub\horde\config directorycopy *.dist *. <enter>\imp\config) folders and execute the copy command from step #10.Before moving on we need to install the Horde Framework. Follow these steps to complete this process.
C:\Inetpub\horde\framework\php\cli\php q install-packages.php <enter>C:\php and the php.exe that lives there is the CGI executable.Next > button to continue.Next > button.Next > button.C:\Inetpub\ for the path. Leave Allow anonymous access to this Web site checked and click the Next > button.Next > button.Finish button.Open your favorite browser and go to http://hostname/horde/test.php. If all is well youll see:
Notes:
According the PHP web site MCAL is not supported on Windows. See the notes section of http://www.php.net/manual/en/ref.mcal.php
I tried to install the PECL fileinfo extension using the pear install fileinfo-beta command. However, it errors out with: The DSP Fileinfo.dsp does not exist. To date I have not found a workaround.