[cvs] [Wiki] changed: InstallHowToIIS
Wiki Guest
wiki at wiki.horde.org
Sat Sep 24 20:46:47 PDT 2005
guest [202.41.167.246] Sat, 24 Sep 2005 20:46:47 -0700
Modified page: http://wiki.horde.org/InstallHowToIIS
New Revision: 7.0
Change log: Revert
@@ -3,9 +3,9 @@
[[toc]]
# This document assumes the following:
* You want to use the CGI version of PHP. I tried to get the ISAPI version working and almost lost my mind doing so. IÂll spare you from the details here.
- * Windows Server 2003 has been installed with the default options. In other words %WINDIR%=C:Windows and IIS6 has been installed with the default options. 2003 Server does not install IIS by default. I used Add/Remove Programs-Add/Remove Windows Components to install IIS6.
+ * Windows Server 2003 has been installed with the default options. In other words %WINDIR%=C:\Windows and IIS6 has been installed with the default options. 2003 Server does not install IIS by default. I used Add/Remove Programs-Add/Remove Windows Components to install IIS6.
* All available patches have been applied using: http://v4.windowsupdate.microsoft.com/en/default.asp
* You have some knowledge of how to use the windows command line.
# This document is specific to the following software versions.
@@ -16,23 +16,23 @@
++ Install PHP 4.3.7RC1
-# Extract the files in the ZIP archive to {{C:}}. Extracting the files will create a folder called {{C:php-4.3.7RC1-Win32}}. Rename the folder to {{C:php}}.
-# Copy {{C:phpphp4ts.dll}} to {{C:WindowsSystem32}}.
-# Copy {{C:phpphp-ini-recommended}} to {{C:Windows}}. Rename {{php-ini-recommended}} to {{php.ini}}
+# Extract the files in the ZIP archive to {{C:\}}. Extracting the files will create a folder called {{C:\php-4.3.7RC1-Win32}}. Rename the folder to {{C:\php}}.
+# Copy {{C:\php\php4ts.dll}} to {{C:\Windows\System32}}.
+# Copy {{C:\php\php-ini-recommended}} to {{C:\Windows}}. Rename {{php-ini-recommended}} to {{php.ini}}
# Just to be safe, change the permissions on {{php.ini}} to EVERYONE: Read & Execute, Read. Ignore any warning you might see when you apply the permissions.
-# Open {{C:Windowsphp.ini}} for editing
- * Search for Âextension_dir and change it to read: {{extension_dir = ".extensions"}}
- * Search for ÂbrowscapÂ. Uncomment the {{browscap =}} line and change it to read: {{browscap = c:windowssystem32inetsrvbrowscap.ini}}
+# Open {{C:\Windows\php.ini}} for editing
+ * Search for Âextension_dir and change it to read: {{extension_dir = ".\extensions"}}
+ * Search for ÂbrowscapÂ. Uncomment the {{browscap =}} line and change it to read: {{browscap = c:\windows\system32\inetsrv\browscap.ini}}
* Search for Âcgi.force_redirectÂ. Uncomment the {{cgi.force_redirect =}} line and change it to read: {{cgi.force_redirect = 0}}
* Search for ÂuploadÂ. By default uploads are enabled. Decide where you want the upload temporary directory to live, if necessary create that folder. Decide what the maximum allowed upload size and set: _
<code>
upload_tmp_dir = whatever folder you like
upload_max_filesize = whatever size you like
</code> _
-I use {{C:temp}} and 64M respectively. The reason I set this directive is because if itÂs not set PHP uses %TEMP% which is {{C:WindowsTemp}}. 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 donÂt worry about this as much as someone running a larger installation.
- * Optionally you can search for Âdoc_root and change it to {{C:Inetpub}}. That way any website created under that folder will have PHP capabilities. I left this directive blank.
+I use {{C:\temp}} and 64M respectively. The reason I set this directive is because if itÂs 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 donÂt worry about this as much as someone running a larger installation.
+ * Optionally you can search for Âdoc_root and change it to {{C:\Inetpub}}. That way any website created under that folder will have PHP capabilities. I left this directive blank.
* Search for ÂWindows ExtensionsÂ. YouÂll need to uncomment the following:
* extension=php_domxml.dll
* extension=php_gd2.dll
* extension=php_gettext.dll
@@ -45,29 +45,29 @@
* extension=php_openssl.dll
* extension=php_pgsql.dll
* You might not need all of the extensions listed here. In fact you probably donÂt but I uncommented all of the extensions reported in the ÂPHP Module Capabilities section of the Horde test script.
# Save and close the updated {{php.ini}} file.
-# In order to get mcrypt support on Windows youÂll need {{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:phpdlls}}
+# In order to get mcrypt support on Windows youÂll need {{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\dlls}}
++ Configure IIS6 to Allow PHP extensions
-Before you start this process I recommend adding {{C:php;C:phpdlls}} to the system path. From what IÂve 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:Windowssystem32}} folder. So to avoid having to find and copy the appropriate dlls I strongly recommend adding these entries into the system path.
+Before you start this process I recommend adding {{C:\php;C:\php\dlls}} to the system path. From what IÂve 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.
# Click "Start -> Administrative Tools -> Internet Information Services (IIS) Manger".
# Expand the local computer tree then click ÂWeb Service Extensions in the left-hand pane.
# Click the ÂAdd a new Web service extensionÂ
 link under Tasks in the right hand pane.
# Enter {{PHP}} in the ÂExtension name:Â box.
# Click the ÂSet extension status to Allowed check box (Should be checked).
-# Click the ÂAdd button then click the ÂBrowseÂ
 button. Browse to {{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.
+# Click the ÂAdd button then click the ÂBrowseÂ
 button. Browse to {{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.
++ Add PHP to IIS6 Web Sites
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 youÂll have to add the functionality to each new web site as you create it. IÂll cover both options here.
# Right Click on the ÂDefault Web Site entry under the ÂWeb Sites folder in the left-hand pane and choose ÂProperties OR Right-click on the ÂWeb Sites folder in the left-hand pane and choose ÂPropertiesÂ.
# Click the ÂHome Directory tab then click the ÂConfigurationÂ
 button
-# Click the ÂAddÂ
 button. Browse to {{C:php}}, change the ÂFiles of type: box to read ÂCGI exe files (*.exe)Â. Double-click on {{php.exe}}.
+# Click the ÂAddÂ
 button. Browse to {{C:\php}}, change the ÂFiles of type: box to read ÂCGI exe files (*.exe)Â. Double-click on {{php.exe}}.
# Enter PHP in the ÂExtensions: box. Make sure the ÂScript Engine box is checked. Leave ÂVerify file exists checked if you want or you may uncheck it. I chose to uncheck it.
# Click the ÂOK button twice to return to the ÂDefault Web Site Properties page. If you are applying these changes to the Web Sites folder youÂll return to the ÂWeb Sites Properties page.
# Change the ÂExecute Permission box to read ÂScripts and ExecutablesÂ
# Click the ÂDocuments tab.
@@ -96,9 +96,9 @@
# Open notepad and enter the following text: _
<code>
<? phpinfo(); ?>
</code>
-# Save the file as {{C:Inetpubwwwrootphptest.php}} _
+# Save the file as {{C:\Inetpub\wwwroot\phptest.php}} _
CAUTION: DonÂt forget that Windows will try to add .txt to the end of the filename.
# Open your favorite browser and go to http://hostname/phptest.php If all is well youÂll see: _
<code>
PHP Version 4.3.7RC1
@@ -111,9 +111,9 @@
CGI/!FastCGI
Virtual Directory Support
enabled
Configuration File (php.ini) Path
-C:WINDOWSphp.ini
+C:\WINDOWS\php.ini
PHP API
20020918
PHP Extension
20020429
@@ -133,9 +133,9 @@
++ Install PEAR Using the Provided PHP Scripts
# Open a Command Prompt
-# CD to {{C:php}}
+# CD to {{C:\php}}
# Execute: {{go-pear.bat <enter>}}. YouÂll see: _
<code>
Welcome to go-pear!
@@ -156,15 +156,15 @@
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
+ 1. Installation prefix : C:\php
2. Binaries directory : $prefix
- 3. PHP code directory ($php_dir) : $prefixpear
- 4. Documentation base directory : $php_dirdocs
- 5. Data base directory : $php_dirdata
- 6. Tests base directory : $php_dirtests
- 7. php.exe path : C:phpcliphp.exe
+ 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:
</code>
# Make any changes you need and press Enter to continue. Based on these installation instructions the defaults are acceptable.
# Say ÂYESÂ to the following prompt: _
@@ -203,39 +203,39 @@
******************************************************************************
WARNING! The include_path defined in the currently used php.ini does not
contain the PEAR PHP directory you just specified:
-<C:phppear>
+<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:WINDOWSphp.ini>? [Y/n] :
+Would you like to alter php.ini <C:\WINDOWS\php.ini>? [Y/n] :
</code>
# Say ÂYESÂ to updating your php.ini file. YouÂll see: _
<code>
-php.ini <C:WINDOWSphp.ini> include_path updated.
+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:php4pear
-Configured directory : C:phppear
-Currently used php.ini (guess) : C:WINDOWSphp.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:
</code>
# Press Enter and youÂll see: _
<code>
-The 'pear' command is now at your service at C:phppear.bat
+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:phpPEAR_ENV.reg .
+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 . . .
</code>
# Press any key to return to the command prompt.
- # Browse to {{C:php}} and double-click on {{PEAR_ENV.reg}} to import the registry information.
- # Next add the PEAR packages which are required by Horde (You should already be in {{C:php}}, if not CD to that directory):
+ # Browse to {{C:\php}} and double-click on {{PEAR_ENV.reg}} to import the registry information.
+ # Next add the PEAR packages which are required by Horde (You should already be in {{C:\php}}, if not CD to that directory):
* Log  From the command prompt: {{pear install log <enter>}}. Ignore the message: Optional dependencies: 'sqlite' PHP extension is recommended to utilize some features.
* Mail Mime  From the command prompt: {{pear install mail_mime <enter>}}
* Date -- From the command prompt: {{pear install date <enter>}}
* Auth_SASL -- From the command prompt: {{pear install auth_sasl <enter>}}
@@ -259,23 +259,23 @@
# Extract the files from {{mysql-4.0.20a-win.zip}} into a temporary folder.
# Browse to that folder and double-click on {{SETUP.EXE}}.
# The installation wizard will start. You can simply accept all of the defaults. Click the Finish button when the installation finished.
-# Optionally add {{C:mysqlbin}} to the system path. I do this out of convenience. It makes it easier when you execute the Horde DB scripts.
+# Optionally add {{C:\mysql\bin}} to the system path. I do this out of convenience. It makes it easier when you execute the Horde DB scripts.
# Open notepad or your favorite text editor and enter the following text: _
<code>
[mysqld]
# set basedir to your installation path
-basedir=C:\mysql
+basedir=C:\\mysql
# set datadir to the location of your data directory
-datadir=C:\mysql\data
+datadir=C:\\mysql\\data
[WinMySQLAdmin]
-Server=C:\mysql\bin\mysqld-nt.exe
+Server=C:\\mysql\\bin\\mysqld-nt.exe
QueryInterval=10
</code>
-# If you installed !MySQL into a different folder youÂll need to change the {{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.
-# Save the file as {{C:Windowsmy.ini}} _
+# If you installed !MySQL into a different folder youÂll need to change the {{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.
+# Save the file as {{C:\Windows\my.ini}} _
CAUTION: DonÂt forget that Windows will try to add .txt to the end of the filename.
# Open a Command Prompt and give !MySQL a test by entering: _
<code>
mysqld Âconsole <enter>
@@ -283,9 +283,9 @@
Of all the information displayed, youÂre only interested in weather or not !MySQL reports: _
<code>
mysqld: ready for connections.
Version: '4.0.20a-debug' socket: '' port: 3306
-Press CTRL+C to stop MySQL
+Press CTRL+C to stop !MySQL
</code>
# Now we can install the !MySQL daemon as a service by entering: _
<code>
mysqld Âinstall <enter>
@@ -310,12 +310,12 @@
mysql Âuser=root Âpassword=your_password mysql
</code> _
You should see: _
<code>
-Welcome to the MySQL monitor. Commands end with ; or g.
+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.
+Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
</code> _
Type {{exit <enter>}} to close the !MySQL shell.
@@ -324,64 +324,64 @@
++ Install Aspell 0.05-3 with the English dictionary.
# Double-click {{Aspell-0-50-3-3-Setup.exe}} to start the Aspell installation wizard.
# Click the {{Next >}} button twice.
-# Change the Destination Directory to {{C:aspell}} and click the {{Next >}} button.
+# Change the Destination Directory to {{C:\aspell}} and click the {{Next >}} button.
# Accept the defaults for the remainder of the installation wizard. The last screen will ask if you want to view manual.html. Leave it checked if you do, otherwise uncheck it and click the Finish button.
# Double-click {{Aspell-en-0.50-2-3.exe}} to start the Aspell dictionary installation wizard.
# The installer should find your base Aspell installation directory and simply add the dictionary so you should be able to accept the defaults for the entire installation wizard.
-# You can type {{aspellbinaspell Âconfig <enter>}} at a Command Prompt to see your current configuration.
+# You can type {{\aspell\bin\aspell Âconfig <enter>}} at a Command Prompt to see your current configuration.
++ Install !WinCVS
# Extract the contents of {{!WinCvs13b17-2.zip}} to a temporary folder.
# Execute {{setup.exe}} to start the installation wizard.
# Click the {{Next >}} button
# Click ÂI accept the agreement radio button then the {{Next >}} button twice.
-# If desired change the destination directory and click the {{Next >}} button. IÂm keeping things consistent so I changed the destination directory to {{C:!WinCVS}}.
+# If desired change the destination directory and click the {{Next >}} button. IÂm keeping things consistent so I changed the destination directory to {{C:\!WinCVS}}.
# If desired, change the installation type and click the {{Next >}} button. As I said earlier, IÂm 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Â.
# Check ÂDonÂt create a Start Menu folder then click the {{Next >}} button
# Uncheck ÂCreate a desktop item and ÂCreate a shell context menu and click the {{Next >}} button.
# Click the ÂInstall button then the ÂFinish button.
++ Checkout Horde and Horde Framework Modules from CVS.
-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. IÂm writing this document while installing Horde on my development server which is much different than my production server. So IÂm going to choose C:Inetpubhorde 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 itÂs important to give some thought to where you want Horde to live. NowÂ
here we goÂ
+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. IÂm writing this document while installing Horde on my development server which is much different than my production server. So IÂm 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 itÂs important to give some thought to where you want Horde to live. NowÂ
here we goÂ
# Open a Command Prompt
-# CD to {{C:Inetpub}}
+# CD to {{C:\Inetpub}}
# Execute the following: _
<code>
SET CVSROOT=:pserver:cvsread at anoncvs.horde.org:/repository <enter>
-WinCVSCVSNTcvs login <enter>
+\WinCVS\CVSNT\cvs login <enter>
</code> _
YouÂll be prompted with: _
<code>
Logging in to :pserver:cvsread at anoncvs.horde.org:2401:/repository
CVS password:
</code>
# Type the password and press Enter. YouÂre now logged into the CVS repository.
-# Type {{!WinCVSCVSNTcvs co -r HEAD horde <enter>}}
-# Once the download completes, make your directory C:Inetpubhorde and execute: _
+# Type {{\!WinCVS\CVSNT\cvs co -r HEAD horde <enter>}}
+# Once the download completes, make your directory C:\Inetpub\horde and execute: _
<code>
-WinCVSCVSNTcvs co -r HEAD framework <enter>
+\WinCVS\CVSNT\cvs co -r HEAD framework <enter>
</code>
# Now that you have the basic framework installed you can continue to check out other modules you want. Personally I use IMP, Ingo, Jonah, Klutz (for fun) Kronolith, Mnemo, Nag, Passwd, and Turba.
-# Once youÂve got all the modules you want execute {{!WinCVSCVSNTcvs logout <enter>}}.
-# CD to {{Inetpubhordeconfig}} directory
+# Once youÂve got all the modules you want execute {{\!WinCVS\CVSNT\cvs logout <enter>}}.
+# CD to {{Inetpub\horde\config}} directory
# Execute {{copy *.dist *. <enter>}}
-# If youÂve downloaded any other modules, CD into their respective config (e.g. {{impconfig}}) folders and execute the copy command from step #10.
+# If youÂve downloaded any other modules, CD into their respective config (e.g. {{\imp\config}}) folders and execute the copy command from step #10.
++ Install the Horde Framework.
Before moving on we need to install the Horde Framework. Follow these steps to complete this process.
# Open a Command Prompt.
-# CD to {{C:Inetpubhordeframework}}
-# Execute {{phpcliphp Âq install-packages.php <enter>}}
-Note that if you do not specify the path to the client php executable the system will generate a ÂBad Option error message. This is one because the system path specifies {{C:php}} and the {{php.exe}} that lives there is the CGI executable.
+# CD to {{C:\Inetpub\horde\framework}}
+# Execute {{\php\cli\php Âq install-packages.php <enter>}}
+Note that if you do not specify the path to the client php executable the system will generate a ÂBad Option error message. This is one because the system path specifies {{C:\php}} and the {{php.exe}} that lives there is the CGI executable.
++ Add the Horde Site to IIS6.
@@ -389,9 +389,9 @@
# Expand the local computer tree then right-click the Web Sites folder and select New then Web SiteÂ
# The Web Site Creation Wizard will start. Simply click the {{Next >}} button to continue.
# Enter a description in the Description: box and click the {{Next >}} button.
# Set the appropriate IP Address and Port settings. The defaults should be fine. Click the {{Next >}} button.
-# Enter {{C:Inetpub}} for the path. Leave ÂAllow anonymous access to this Web site checked and click the Next > button.
+# Enter {{C:\Inetpub\}} for the path. Leave ÂAllow anonymous access to this Web site checked and click the Next > button.
# Check Execute (Such as ISAPI application or CGI) and click the {{Next >}} button.
# Click the {{Finish}} button.
# Stop the Default Web Site using the Stop item button on the IIS Manager Tool bar.
# Start your new web site using the Start item button on the IIS Manager Tool bar.
More information about the cvs
mailing list