cvs: phpdoc / manual.xml.in /en/install README intro.xml problems.xml /en/install/macos client.xml index.xml packages.xml server.xml
/en/install/windows apache1.xml apache2.xml building.xml extensions.xml iis.xml index.xml installer.xml manual.xml

From: Date: Thu, 03 Jun 2004 22:45:11 +0000
Subject: cvs: phpdoc / manual.xml.in /en/install README intro.xml problems.xml /en/install/macos client.xml index.xml packages.xml server.xml
/en/install/windows apache1.xml apache2.xml building.xml extensions.xml iis.xml index.xml installer.xml manual.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969361157@lists.php.net to get a copy of this message
goba Thu Jun 3 18:45:12 2004 EDT Added files: /phpdoc/en/install README intro.xml problems.xml /phpdoc/en/install/macos client.xml index.xml packages.xml server.xml /phpdoc/en/install/windows apache1.xml apache2.xml building.xml extensions.xml iis.xml index.xml installer.xml manual.xml Modified files: /phpdoc manual.xml.in Log: starting to split and reorganize the install part (added readme, so translators will not get confused - also added planned TOC to manual.xml.in - as comment)

http://cvs.php.net/diff.php/phpdoc/manual.xml.in?r1=1.175&r2=1.176&ty=u Index: phpdoc/manual.xml.in diff -u phpdoc/manual.xml.in:1.175 phpdoc/manual.xml.in:1.176 --- phpdoc/manual.xml.in:1.175 Wed Jun 2 05:49:01 2004 +++ phpdoc/manual.xml.in Thu Jun 3 18:45:11 2004 @@ -2,7 +2,7 @@ <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "@srcdir@/dtds/dbxml-4.1.2/docbookx.dtd" [ -<!-- $Revision: 1.175 $ --> +<!-- $Revision: 1.176 $ --> <!-- Add translated specific definitions and snippets --> <!ENTITY % language-defs SYSTEM "@srcdir@/@LANGDIR@/language-defs.ent"> @@ -57,6 +57,18 @@ &chapters.config; </part> + <!-- + <part id="install"> + <title>&InstallAndConfigure;</title> + &install.intro; + &install.macos.index; + &install.unix.index; + &install.windows.index; + &install.problems; + &install.ini; + </part> + --> + <part id="langref"> <title>&LanguageReference;</title> &language.basic-syntax; http://cvs.php.net/co.php/phpdoc/en/install/intro.xml?r=1.1&p=1 Index: phpdoc/en/install/intro.xml +++ phpdoc/en/install/intro.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <chapter id="install.general"> <title>General Installation Considerations</title> <para> Before starting the installation, first you need to know what do you want to use PHP for. There are three main fields you can use PHP, as described in the <link linkend="intro-whatcando">What can PHP do?</link> section: <itemizedlist> <listitem><simpara>Server-side scripting</simpara></listitem> <listitem><simpara>Command line scripting</simpara></listitem> <listitem><simpara>Client-side GUI applications</simpara></listitem> </itemizedlist> </para> <para> For the first and most common form, you need three things: PHP itself, a web server and a web browser. You probably already have a web browser, and depending on your operating system setup, you may also have a web server (e.g. Apache on Linux and MacOS X; IIS on Windows). You may also rent webspace at a company. This way, you don't need to set up anything on your own, only write your PHP scripts, upload it to the server you rent, and see the results in your browser. </para> <para> While setting up the server and PHP on your own, you have two choices for the method of connecting PHP to the server. For many servers PHP has a direct module interface (also called SAPI). These servers include Apache, Microsoft Internet Information Server, Netscape and iPlanet servers. Many other servers have support for ISAPI, the Microsoft module interface (OmniHTTPd for example). If PHP has no module support for your web server, you can always use it as a CGI or FastCGI processor. This means you set up your server to use the CGI executable of PHP to process all PHP file requests on the server. </para> <para> If you are also interested to use PHP for command line scripting (e.g. write scripts autogenerating some images for you offline, or processing text files depending on some arguments you pass to them), you always need the command line executable. For more information, read the section about <link linkend="features.commandline">writing command line PHP applications</link>. In this case, you need no server and no browser. </para> <para> With PHP you can also write desktop GUI applications using the PHP-GTK extension. This is a completely different approach than writing web pages, as you do not output any HTML, but manage windows and objects within them. For more information about PHP-GTK, please <ulink url="&url.php.gtk;">visit the site dedicated to this extension</ulink>. PHP-GTK is not included in the official PHP distribution. </para> <para> From now on, this section deals with setting up PHP for web servers on Unix and Windows with server module interfaces and CGI executables. You will also find information on the command line executable in the following sections. </para> <para> PHP source code and binary distributions for Windows can be found at <ulink url="&url.php.downloads;">&url.php.downloads;</ulink>. We recommend you to choose a <ulink url="&url.mirrors;">mirror</ulink> nearest to you for downloading the distributions. </para> </chapter> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/problems.xml?r=1.1&p=1 Index: phpdoc/en/install/problems.xml +++ phpdoc/en/install/problems.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <chapter id="install.problems"> <title>Problems?</title> <sect1> <title>Read the FAQ</title> <simpara> Some problems are more common than others. The most common ones are listed in the <link linkend="faq">PHP FAQ</link>, part of this manual. </simpara> </sect1> <sect1 id="install.otherproblems"> <title>Other problems</title> <simpara> If you are still stuck, someone on the PHP installation mailing list may be able to help you. You should check out the archive first, in case someone already answered someone else who had the same problem as you. The archives are available from the support page on <ulink url="&url.php.support;">&url.php.support;</ulink>. To subscribe to the PHP installation mailing list, send an empty mail to <ulink url="mailto:&email.php.install.subscribe;">&email.php.install.subscribe;</ulink>. The mailing list address is <ulink url="mailto:&email.php.install;">&email.php.install;</ulink>. </simpara> <simpara> If you want to get help on the mailing list, please try to be precise and give the necessary details about your environment (which operating system, what PHP version, what web server, if you are running PHP as CGI or a server module, &safemode;, etc...), and preferably enough code to make others able to reproduce and test your problem. </simpara> </sect1> <sect1 id="install.bugreports"> <title>Bug reports</title> <simpara> If you think you have found a bug in PHP, please report it. The PHP developers probably don't know about it, and unless you report it, chances are it won't be fixed. You can report bugs using the bug-tracking system at <ulink url="&url.php.bugs;">&url.php.bugs;</ulink>. Please do not send bug reports in mailing list or personal letters. The bug system is also suitable to submit feature requests. </simpara> <simpara> Read the <ulink url="&url.php.bugs.howtoreport;">How to report a bug</ulink> document before submitting any bug reports! </simpara> </sect1> </chapter> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/macos/client.xml?r=1.1&p=1 Index: phpdoc/en/install/macos/client.xml +++ phpdoc/en/install/macos/client.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.macosx.client"> <title>Compiling for MacOS X client</title> <simpara> Those tips are graciously provided by <ulink url="&url.macosx;">Marc Liyanage</ulink>. </simpara> <simpara> The PHP module for the Apache web server included in Mac OS X. This version includes support for the MySQL and PostgreSQL databases. </simpara> <simpara> NOTE: Be careful when you do this, you could screw up your Apache web server! </simpara> <para> Do this to install: <orderedlist> <listitem> <simpara> Open a terminal window. </simpara> </listitem> <listitem> <simpara> Type <userinput>wget http://www.diax.ch/users/liyanage/software/macosx/libphp4.so.gz</userinput>, wait for the download to finish. </simpara> </listitem> <listitem> <simpara> Type <userinput>gunzip libphp4.so.gz</userinput>. </simpara> </listitem> <listitem> <simpara> Type <userinput>sudo apxs -i -a -n php4 libphp4.so</userinput> </simpara> </listitem> <listitem> <para> Now type <userinput>sudo open -a TextEdit /etc/httpd/httpd.conf</userinput>. TextEdit will open with the web server configuration file. Locate these two lines towards the end of the file: (Use the Find command) <programlisting role="apache"> <![CDATA[ #AddType application/x-httpd-php .php #AddType application/x-httpd-php-source .phps ]]> </programlisting> Remove the two hash marks (<literal>#</literal>), then save the file and quit TextEdit. </para> </listitem> <listitem> <simpara> Finally, type <userinput>sudo apachectl graceful</userinput> to restart the web server. </simpara> </listitem> </orderedlist> </para> <para> PHP should now be up and running. You can test it by dropping a file into your <filename class="directory">Sites</filename> folder which is called <filename>test.php</filename>. Into that file, write this line: <literal>&lt;?php phpinfo() ?&gt;</literal>. </para> <para> Now open up <literal>127.0.0.1/~your_username/test.php</literal> in your web browser. You should see a status table with information about the PHP module. </para> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/macos/index.xml?r=1.1&p=1 Index: phpdoc/en/install/macos/index.xml +++ phpdoc/en/install/macos/index.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <chapter id="install.macosx"> <title>Installation on Mac OS X</title> <para> This section contains notes and hints specific to installing PHP on Mac OS X. </para> &install.macosx.packages; &install.macosx.server; &install.macosx.client; </chapter> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/macos/packages.xml?r=1.1&p=1 Index: phpdoc/en/install/macos/packages.xml +++ phpdoc/en/install/macos/packages.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.macosx.packages"> <title>Using Packages</title> <simpara> There are a few pre-packaged and pre-compiled versions of PHP for Mac OS X. This can help in setting up a standard configuration, but if you need to have a different set of features (such as a secure server, or a different database driver), you may need to build PHP and/or your web server yourself. If you are unfamiliar with building and compiling your own software, it's worth checking whether somebody has already built a packaged version of PHP with the features you need. </simpara> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/macos/server.xml?r=1.1&p=1 Index: phpdoc/en/install/macos/server.xml +++ phpdoc/en/install/macos/server.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.macosx.server"> <title>Compiling for OS X Server</title> <simpara> There are two slightly different versions of Mac OS X, client and server. The following is for OS X Server. </simpara> <formalpara id="install.macosx.compile.example"> <title>Mac OS X server install</title> <para> <orderedlist> <listitem> <simpara>Get the latest distributions of Apache and PHP.</simpara> </listitem> <listitem> <para> Untar them, and run the <command>configure</command> program on Apache like so. <programlisting role="shell"> <![CDATA[ /configure --exec-prefix=/usr \ --localstatedir=/var \ --mandir=/usr/share/man \ --libexecdir=/System/Library/Apache/Modules \ --iconsdir=/System/Library/Apache/Icons \ --includedir=/System/Library/Frameworks/Apache.framework/Versions/1.3/Headers \ --enable-shared=max \ --enable-module=most \ --target=apache ]]> </programlisting> </para> </listitem> <listitem> <para> If you want the compiler to do some optimization., you may also want to add this line: <programlisting role="shell"> <![CDATA[ setenv OPTIM=-O2 ]]> </programlisting> </para> </listitem> <listitem> <para> Next, go to the PHP 4 source directory and configure it. <programlisting role="shell"> <![CDATA[ /configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ --mandir=/usr/share/man \ --with-xml \ --with-apache=/src/apache_1.3.12 ]]> </programlisting> If you have any other additions (MySQL, GD, etc.), be sure to add them here. For the <option role="configure">--with-apache</option> string, put in the path to your apache source directory, for example <filename class="directory">/src/apache_1.3.12</filename>. </para> </listitem> <listitem> <simpara> Type <command>make</command> and <command>make install</command>. This will add a directory to your Apache source directory under <filename class="directory">src/modules/php4</filename>. </simpara> </listitem> <listitem> <para> Now, reconfigure Apache to build in PHP 4. <programlisting role="shell"> <![CDATA[ /configure --exec-prefix=/usr \ --localstatedir=/var \ --mandir=/usr/share/man \ --libexecdir=/System/Library/Apache/Modules \ --iconsdir=/System/Library/Apache/Icons \ --includedir=/System/Library/Frameworks/Apache.framework/Versions/1.3/Headers \ --enable-shared=max \ --enable-module=most \ --target=apache \ --activate-module=src/modules/php4/libphp4.a ]]> </programlisting> You may get a message telling you that libmodphp4.a is out of date. If so, go to the <filename class="directory">src/modules/php4</filename> directory inside your apache source directory and run this command: <command>ranlib libmodphp4.a</command>. Then go back to the root of the apache source directory and run the above <command>configure</command> command again. That'll bring the link table up to date. Run <command>make</command> and <command>make install</command> again. </para> </listitem> <listitem> <simpara> Copy and rename the <filename>php.ini-dist</filename> file to your <filename class="directory">bin</filename> directory from your PHP 4 source directory: <userinput>cp php.ini-dist /usr/local/bin/php.ini</userinput> or (if your don't have a local directory) <userinput>cp php.ini-dist /usr/bin/php.ini</userinput>. </simpara> </listitem> </orderedlist> </para> </formalpara> <!-- <simpara> TODO: Someone with Mac OS X skills needs to improve this DOC Also, these links are 404 and outdated anyways and stepwise doesn't support PHP anymore. See also bug #14732 Other examples for <ulink url="&url.stepwise.macosx-client;">Mac OS X client</ulink> and <ulink url="&url.stepwise.macosx-client;">Mac OS X server</ulink> are available at <ulink url="&url.stepwise;">Stepwise</ulink>. </simpara> --> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/apache1.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/apache1.xml +++ phpdoc/en/install/windows/apache1.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.windows.apache1"> <title>Apache 1.3.x on Microsft Windows</title> <para> This section contains notes and hints specific to Apache 1.3.x installs of PHP on Microsoft Windows systems. We also have <link linkend="install.windows.apache2">instructions and notes for Apache 2 on a separate page</link>. </para> <simpara> There are two ways to set up PHP to work with Apache 1.3.x on Windows. One is to use the CGI binary (php.exe), the other is to use the Apache module DLL. In either case you need to stop the Apache server, and edit your &httpd.conf; to configure Apache to work with PHP. </simpara> <simpara> It is worth noting here that now the SAPI module has been made more stable under Windows, we recommend it's use above the CGI binary, since it is more transparent and secure. </simpara> <simpara> Although there can be a few variations of configuring PHP under Apache, these are simple enough to be used by the newcomer. Please consult the Apache Docs for further configuration directives. </simpara> <para> If you unziped the PHP package to <filename>c:\php\</filename> as described in the <link linkend="install.windows.manual">Manual Installation Steps</link> section, you need to insert these lines to your Apache configuration file to set up the CGI binary: <itemizedlist> <listitem> <simpara> <literal> ScriptAlias /php/ "c:/php/" </literal> </simpara> </listitem> <listitem> <simpara> <literal> AddType application/x-httpd-php .php .phtml </literal> </simpara> </listitem> <listitem> <simpara> <literal> Action application/x-httpd-php "/php/php.exe" </literal> </simpara> </listitem> </itemizedlist> Note that the second line in the list above can be found in the actual versions of &httpd.conf;, but it is commented out. Remember also to substitute the <filename>c:/php/</filename> for your actual path to PHP. </para> <warning> <para> By using the CGI setup, your server is open to several possible attacks. Please read our <link linkend="security.cgi-bin">CGI security section</link> to learn how to defend yourself from attacks. </para> </warning> <para> If you would like to use PHP as a module in Apache, be sure to copy <filename>php4ts.dll</filename> to the <filename>windows/system</filename> (for Windows 9x/Me), <filename>winnt/system32</filename> (for Windows NT/2000) or <filename>windows/system32</filename> (for Windows XP) directory, overwriting any older file. Then you should add the following lines to your Apache &httpd.conf; file: <itemizedlist> <listitem> <simpara> Open &httpd.conf; with your favorite editor and locate the <literal>LoadModule</literal> directive and add the following line <emphasis>at the end</emphasis> of the list for PHP 4: <literal>LoadModule php4_module "c:/php/sapi/php4apache.dll"</literal> or the following for PHP 5: <literal>LoadModule php5_module "c:/php/sapi/php5apache.dll"</literal> </simpara> </listitem> <listitem> <simpara> You may find after using the Windows installer for Apache that you need to define the <literal>AddModule</literal> directive for <filename>mod_php4.c</filename>. This is especially important if the <literal>ClearModuleList</literal> directive is defined, which you will find by scrolling down a few lines. You will see a list of <literal>AddModule</literal> entries, add the following line <emphasis>at the end</emphasis> of the list: <literal>AddModule mod_php4.c</literal> For PHP 5, instead use <literal>AddModule mod_php5.c</literal> </simpara> </listitem> <listitem> <simpara> Search for a phrase similar to <literal># AddType allows you to tweak mime.types</literal>. You will see some <literal>AddType</literal> entries, add the following line <emphasis>at the end</emphasis> of the list: <literal>AddType application/x-httpd-php .php</literal>. You can choose any extension you want to parse through PHP here. .php is simply the one we suggest. You can even include .html, and .php3 can be added for backwards compatibility. </simpara> </listitem> </itemizedlist> </para> <simpara> After changing the configuration file, remember to restart the server, for example, <command>NET STOP APACHE</command> followed by <command>NET START APACHE</command>, if you run Apache as a Windows Service, or use your regular shortcuts. </simpara> <simpara> There are two ways you can use the source code highlighting feature, however their ability to work depends on your installation. If you have configured Apache to use PHP as an SAPI module, then by adding the following line to your &httpd.conf; (at the same place you inserted <literal>AddType application/x-httpd-php .php</literal>, see above) you can use this feature: <literal>AddType application/x-httpd-php-source .phps</literal>. </simpara> <simpara> If you chose to configure Apache to use PHP as a CGI binary, you will need to use the <function>show_source</function> function. To do this simply create a PHP script file and add this code: <literal>&lt;?php show_source ("original_php_script.php"); ?&gt;</literal>. Substitute <literal>original_php_script.php</literal> with the name of the file you wish to show the source of. </simpara> <note> <simpara> On Win-Apache all backslashes in a path statement such as "c:\directory\file.ext", must be converted to forward slashes, as "c:/directory/file.ext". </simpara> </note> </sect2> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/apache2.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/apache2.xml +++ phpdoc/en/install/windows/apache2.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.windows.apache2"> <title>Apache 2.0.x on Microsoft Windows</title> <para> This section contains notes and hints specific to Apache 2.0.x installs of PHP on Microsoft Windows systems. We also have <link linkend="install.windows.apache1">instructions and notes for Apache 1.3.x on a separate page</link>. </para> <warning> <para> Do not use Apache 2.0.x and <literal>PHP</literal> in a production environment neither on Unix nor on Windows. </para> </warning> <para> You are highly encouraged to take a look at the <ulink url="&url.apache2.docs;">Apache Documentation</ulink> to get a basic understanding of the Apache 2.0.x Server. </para> <sect2 id="compat.apache2"> <title>PHP and Apache 2.0.x compatibility notes</title> <para> The following versions of PHP are known to work with the most recent version of Apache 2.0.x: <itemizedlist spacing="compact"> <listitem> <simpara> PHP 4.3.0 or later available at <ulink url="&url.php.downloads;">&url.php.downloads;</ulink>. </simpara> </listitem> <listitem> <simpara> the latest stable development version. Get the source code <ulink url="&url.php.snapshots;php4-latest.tar.gz"> &url.php.snapshots;php4-latest.tar.gz</ulink> or download binaries for Windows <ulink url="&url.php.snapshots;win32/php4-win32-latest.zip"> &url.php.snapshots;win32/php4-win32-latest.zip</ulink>. </simpara> </listitem> <listitem> <simpara> a prerelease version downloadable from <ulink url="&url.php.prerelease;">&url.php.prerelease;</ulink>. </simpara> </listitem> <listitem> <simpara> you have always the option to obtain <literal>PHP</literal> through <ulink url="&url.php.anoncvs;">anonymous CVS</ulink>. </simpara> </listitem> </itemizedlist> These versions of <literal>PHP</literal> are compatible to Apache 2.0.40 and later. </para> <note> <simpara> Apache 2.0 <literal>SAPI</literal>-support started with PHP 4.2.0. PHP 4.2.3 works with Apache 2.0.39, don't use any other version of Apache with PHP 4.2.3. However, the recommended setup is to use PHP 4.3.0 or later with the most recent version of Apache2. </simpara> <simpara> All mentioned versions of <literal>PHP</literal> will work still with Apache 1.3.x. </simpara> </note> </sect2> <sect2 id="install.windows.apache2"> <title>PHP and Apache 2.0.x on Windows</title> <para> Consider to read the <ulink url="&url.apache2.windows;"> Windows specific notes</ulink> for Apache 2.0. </para> <warning> <para> Apache 2.0 is designed to run on Windows NT 4.0, Windows 2000 or Windows XP. At this time, support for Windows 9x is incomplete. Apache 2.0 is not expected to work on those platforms at this time. </para> </warning> <para> Download the most recent version of <ulink url= "&url.apache;"> Apache 2.0</ulink> and a fitting PHP version from the above mentioned places. Follow the <link linkend="install.windows.manual">Manual Installation Steps</link> and come back to go on with the integration of <literal>PHP</literal> and Apache. </para> <para> There are two ways to set up <literal>PHP</literal> to work with Apache 2.0 on Windows. One is to use the CGI binary the other is to use the Apache module DLL. In either case you need to stop the Apache server, and edit your &httpd.conf; to configure Apache to work with <literal>PHP</literal>. </para> <para> You need to insert these three lines to your Apache &httpd.conf; configuration file to set up the <emphasis>CGI binary</emphasis>: <example> <title>PHP and Apache 2.0 as CGI</title> <programlisting role="apache"> <![CDATA[ ScriptAlias /php/ "c:/php/" AddType application/x-httpd-php .php Action application/x-httpd-php "/php/php.exe" ]]> </programlisting> </example> </para> <para> If you would like to use <literal>PHP</literal> as a module in Apache 2.0, be sure to move <filename>php4ts.dll</filename> for PHP 4, or <filename>php5ts.dll</filename> for PHP 5, to <filename>winnt/system32</filename> (for Windows NT/2000) or <filename>windows/system32</filename> (for Windows XP), overwriting any older file. You need to insert these two lines to your Apache &httpd.conf; configuration file to set up the <emphasis>PHP-Module</emphasis> for Apache 2.0: <example> <title>PHP and Apache 2.0 as Module</title> <programlisting role="apache"> <![CDATA[ ; For PHP 4 do something like this: LoadModule php4_module "c:/php/sapi/php4apache2.dll" AddType application/x-httpd-php .php ; For PHP 5 do something like this: LoadModule php5_module "c:/php/sapi/php5apache2.dll" AddType application/x-httpd-php .php ]]> </programlisting> </example> </para> <note> <simpara> Remember to substitute the <filename>c:/php/</filename> for your actual path to <literal>PHP</literal> in the above examples. Take care to use either <filename>php4apache2.dll</filename> or <filename>php5apache2.dll</filename> in your LoadModule directive and <emphasis>not</emphasis><filename>php4apache.dll</filename> or <filename>php5apache.dll</filename> as the latter ones are designed to run with <link linkend="install.windows.apache1">Apache 1.3.x</link>. </simpara> </note> <warning> <simpara> Don't mix up your installation with dll files from <emphasis>different PHP versions </emphasis>. You have the only choice to use the dll's and extensions that ship with your downloaded PHP version. </simpara> </warning> </sect2> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/building.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/building.xml +++ phpdoc/en/install/windows/building.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.windows.build"> <title>Building from source</title> <para> Before getting started, it is worthwhile answering the question: "Why is building on Windows so hard?" Two reasons come to mind: </para> <orderedlist> <listitem> <simpara> Windows does not (yet) enjoy a large community of developers who are willing to freely share their source. As a direct result, the necessary investment in infrastructure required to support such development hasn't been made. By and large, what is available has been made possible by the porting of necessary utilities from Unix. Don't be surprised if some of this heritage shows through from time to time. </simpara> </listitem> <listitem> <simpara> Pretty much all of the instructions that follow are of the "set and forget" variety. So sit back and try follow the instructions below as faithfully as you can. </simpara> </listitem> </orderedlist> <sect2 id="install.windows.build.requirement"> &reftitle.required; <para> To compile and build <literal>PHP</literal> you need a Microsoft Development Environment. Microsoft Visual C++ 6.0 is recommended. To extract the downloaded files you need a extraction utility (e.g.: Winzip). If you don't already have an unzip utility, you can get a free version from <ulink url="&url.infozip;">InfoZip</ulink>. </para> <para> Before you get started, you have to download... </para> <itemizedlist> <listitem> <simpara> ..the win32 buildtools from the <literal>PHP</literal> site at <ulink url="&url.win32.buildtools;">&url.win32.buildtools;</ulink>. </simpara> </listitem> <listitem> <simpara> ..the source code for the DNS name resolver used by <literal>PHP </literal> from <ulink url="&url.win32.dnsresolver;"> &url.win32.dnsresolver;</ulink>. This is a replacement for the <filename>resolv.lib</filename> library included in <filename> win32build.zip</filename>. </simpara> </listitem> <listitem> <simpara> If you plan to compile <literal>PHP</literal> as a Apache module you will also need the <ulink url="&url.apache.source;">Apache sources</ulink>. </simpara> </listitem> </itemizedlist> <simpara> Finally, you are going to need the source to PHP 4 itself. You can get the latest development version using <ulink url="&url.php.anoncvs;"> anonymous CVS</ulink>, a <ulink url="&url.php.snapshots;"> snapshot</ulink> or the most recent released <ulink url="&url.php.downloads;"> source</ulink> tarball. </simpara> </sect2> <sect2 id="install.windows.build.install"> <title>Putting it all together</title> <para> After downloading the required packages you have to extract them in a proper place. <itemizedlist> <listitem> <simpara> Create a working directory where all files end up after extracting, e.g: <filename class="directory">C:\work</filename>. </simpara> </listitem> <listitem> <simpara> Create the directory <filename>win32build</filename> under your working directory (<filename class="directory">C:\work</filename>) and unzip <filename> win32build.zip</filename> into it. </simpara> </listitem> <listitem> <simpara> Create the directory <filename>bindlib_w32</filename> under your working directory (<filename class="directory">C:\work</filename>) and unzip <filename> bindlib_w32.zip</filename> into it. </simpara> </listitem> <listitem> <simpara> Extract the downloaded PHP source code into your working directory (<filename class="directory">C:\work</filename>). </simpara> </listitem> </itemizedlist> Following this steps your directory structure looks like this: <informalexample> <programlisting> <![CDATA[ +--c:\work | | | +--bindlib_w32 | | | | | +--arpa | | | | | +--conf | | | | | +--... | | | +--php-4.x.x | | | | | +--build | | | | | +--... | | | | | +--win32 | | | | | +--... | | | +--win32build | | | | | +--bin | | | | | +--include | | | | | +--lib ]]> </programlisting> </informalexample> Create the directories <filename class="directory">c:\usr\local\lib</filename>. Copy <filename>bison.simple</filename> from <filename class="directory">c:\work\win32build\bin </filename> to <filename class="directory">c:\usr\local\lib</filename>. </para> <note> <simpara> <ulink url="&url.cygwin;">Cygwin</ulink> users may omit the last step. A properly installed Cygwin environment provides the mandatory files <filename>bison.simple</filename> and <filename>bison.exe</filename>. </simpara> </note> </sect2> <sect2 id="install.windows.build.configure"> <title>Configure MVC ++</title> <para> The next step is to configure MVC ++ to prepare for compiling. Launch Microsoft Visual C++, and from the menu select Tools =&gt; Options. In the dialog, select the directories tab. Sequentially change the dropdown to Executables, Includes, and Library files. Your entries should look like this: <itemizedlist> <listitem> <simpara> Executable files: <filename class="directory">c:\work\win32build\bin</filename>, Cygwin users: <filename>cygwin\bin</filename> </simpara> </listitem> <listitem> <simpara> Include files: <filename class="directory">c:\work\win32build\include</filename> </simpara> </listitem> <listitem> <simpara> Library files: <filename class="directory">c:\work\win32build\lib</filename> </simpara> </listitem> </itemizedlist> </para> </sect2> <sect2 id="install.windows.build.resolvlib"> <title>Build resolv.lib</title> <para> You must build the <filename>resolv.lib</filename> library. Decide whether you want to have debug symbols available (bindlib - Win32 Debug) or not (bindlib - Win32 Release). Build the appropriate configuration: <itemizedlist> <listitem> <simpara> For GUI users, launch VC++, and then select File =&gt; Open Workspace, navigate to <filename class="directory">c:\work\bindlib_w32</filename> and select <filename>bindlib.dsw</filename>. Then select Build=&gt;Set Active Configuration and select the desired configuration. Finally select Build=&gt;Rebuild All. </simpara> </listitem> <listitem> <simpara> For command line users, make sure that you either have the C++ environment variables registered, or have run <command>vcvars.bat</command>, and then execute one of the following commands: </simpara> <itemizedlist> <listitem> <simpara> <userinput>msdev bindlib.dsp /MAKE "bindlib - Win32 Debug"</userinput> </simpara> </listitem> <listitem> <simpara> <userinput>msdev bindlib.dsp /MAKE "bindlib - Win32 Release"</userinput> </simpara> </listitem> </itemizedlist> </listitem> </itemizedlist> At this point, you should have a usable <filename>resolv.lib</filename> in either your <filename class="directory">c:\work\bindlib_w32\Debug</filename> or <filename>Release</filename> subdirectories. Copy this file into your <filename class="directory">c:\work\win32build\lib</filename> directory over the file by the same name found in there. </para> </sect2> <sect2 id="install.windows.build.compile"> <title>Compiling</title> <simpara> The best way to get started is to build the CGI version. </simpara> <itemizedlist> <listitem> <simpara> For GUI users, launch VC++, and then select File =&gt; Open Workspace and select <filename>c:\work\php-4.x.x\win32\php4ts.dsw </filename>. Then select Build=&gt;Set Active Configuration and select the desired configuration, either <literal>php4ts - Win32 Debug_TS</literal> or <literal>php4ts - Win32 Release_TS</literal>. Finally select Build=&gt;Rebuild All. </simpara> </listitem> <listitem> <simpara> For command line users, make sure that you either have the C++ environment variables registered, or have run <command>vcvars.bat</command>, and then execute one of the following commands from the <filename class="directory">c:\work\php-4.x.x\win32 </filename> directory: </simpara> <itemizedlist> <listitem> <simpara> <userinput>msdev php4ts.dsp /MAKE "php4ts - Win32 Debug_TS"</userinput> </simpara> </listitem> <listitem> <simpara> <userinput>msdev php4ts.dsp /MAKE "php4ts - Win32 Release_TS"</userinput> </simpara> </listitem> <listitem> <simpara> At this point, you should have a usable <filename>php.exe</filename> in either your <filename class="directory">c:\work\php-4.x.x.\Debug_TS</filename> or <filename>Release_TS</filename> subdirectories. </simpara> </listitem> </itemizedlist> </listitem> </itemizedlist> <simpara> It is possible to do minor customization to the build process by editing the <filename>main/config.win32.h</filename> file. For example you can change the default location of &php.ini;, the built-in extensions, and the default location for your extensions. </simpara> <simpara> Next you may want to build the CLI version which is designed to use <link linkend="features.commandline">PHP from the command line</link>. The steps are the same as for building the CGI version, except you have to select the <literal>php4ts_cli - Win32 Debug_TS</literal> or <literal>php4ts_cli - Win32 Release_TS</literal> project file. After a successful compiling run you will find the <filename>php.exe</filename> in either the directory <filename>Release_TS\cli\</filename> or <filename>Debug_TS\cli\</filename>. </simpara> <note> <simpara> If you want to use PEAR and the comfortable command line installer, the CLI-SAPI is mandatory. For more information about PEAR and the installer read the documentation at the <ulink url="&url.php.pear;manual/"> PEAR</ulink> website. </simpara> </note> <simpara> In order to build the SAPI module (<filename>php4isapi.dll</filename>) for integrating PHP with Microsoft IIS, set your active configuration to <filename>php4isapi-whatever-config</filename> and build the desired dll. </simpara> </sect2> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/extensions.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/extensions.xml +++ phpdoc/en/install/windows/extensions.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.windows.extensions"> <title>Installation of Windows extensions</title> <para> After installing PHP and a webserver on Windows, you will probably want to install some extensions for added functionality. You can choose which extensions you would like to load when PHP starts by modifying your &php.ini;. You can also load a module dynamically in your script using <function>dl</function>. </para> <para> The DLLs for PHP extensions are prefixed with 'php_' in PHP 4 (and 'php3_' in PHP 3). This prevents confusion between PHP extensions and their supporting libraries. </para> <note> <para> In PHP 4.3.1 BCMath, Calendar, COM, Ctype, FTP, MySQL, ODBC, Overload, PCRE, Session, Tokenizer, WDDX, XML and Zlib support is <emphasis>built in</emphasis>. You don't need to load any additional extensions in order to use these functions. See your distributions <filename>README.txt</filename> or <filename>install.txt</filename> or <link linkend ="install.extensions.overview">this table</link> for a list of built in modules. </para> </note> <para> The default location <literal>PHP</literal> searches for extensions is <filename class="directory">c:\php4\extensions</filename>. To change this setting to reflect your setup of <literal>PHP</literal> edit your &php.ini; file: <itemizedlist> <listitem> <para> You will need to change the <link linkend ="ini.extension-dir">extension_dir</link> setting to point to the directory where your extensions lives, or where you have placed your <filename>php_*.dll</filename> files. Please do not forget the last backslash. For example: <informalexample> <programlisting role="ini"> <![CDATA[ extension_dir = c:/php/extensions/ ]]> </programlisting> </informalexample> </para> </listitem> <listitem> <para> Enable the extension(s) in &php.ini; you want to use by uncommenting the <literal>extension=php_*.dll</literal> lines in &php.ini;. This is done by deleting the leading ; form the extension you want to load. <example> <title>Enable <link linkend="ref.bzip2">Bzip2</link> extension for PHP-Windows</title> <programlisting role="ini"> <![CDATA[ // change the following line from ... ;extension=php_bz2.dll // ... to extension=php_bz2.dll ]]> </programlisting> </example> </para> </listitem> <listitem> <para> Some of the extensions need extra DLLs to work. Couple of them can be found in the distribution package, in the <filename class="directory">c:\php\dlls\</filename> folder but some, for example Oracle (<filename>php_oci8.dll</filename>) require DLLs which are not bundled with the distribution package. Copy the bundled DLLs from <filename class="directory">c:\php\dlls</filename> folder to your Windows <varname>PATH</varname>, safe places are: <simplelist> <member>c:\windows\system for Windows 9x/Me</member> <member>c:\winnt\system32 for Windows NT/2000</member> <member>c:\windows\system32 for Windows XP</member> </simplelist> If you have them already installed on your system, overwrite them only if something doesn't work correctly (Before overwriting them, it is a good idea to make a backup of them, or move them to another folder - just in case something goes wrong). </para> </listitem> </itemizedlist> <note> <simpara> If you are running a server module version of <literal>PHP</literal> remember to restart your webserver to reflect your changes to &php.ini;. </simpara> </note> </para> <para> The following table describes some of the extensions available and required additional dlls. <table id="install.extensions.overview"> <title>PHP Extensions</title> <tgroup cols="3"> <thead> <row> <entry>Extension</entry> <entry>Description</entry> <entry>Notes</entry> </row> </thead> <tbody> <row> <entry>php_bz2.dll</entry> <entry><link linkend="ref.bzip2">bzip2</link> compression functions</entry> <entry>None</entry> </row> <row> <entry>php_calendar.dll</entry> <entry><link linkend="ref.calendar">Calendar</link> conversion functions</entry> <entry>Built in since PHP 4.0.3</entry> </row> <row> <entry>php_cpdf.dll</entry> <entry><link linkend="ref.cpdf">ClibPDF</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_crack.dll</entry> <entry><link linkend="ref.crack">Crack</link> functions</entry> <entry>None</entry> </row> <row> <entry>php3_crypt.dll</entry> <entry>Crypt functions</entry> <entry>unknown</entry> </row> <row> <entry>php_ctype.dll</entry> <entry><link linkend="ref.ctype">ctype</link> family functions</entry> <entry>Built in since PHP 4.3.0</entry> </row> <row> <entry>php_curl.dll</entry> <entry><link linkend="ref.curl">CURL</link>, Client URL library functions</entry> <entry>Requires: <filename>libeay32.dll</filename>, <filename>ssleay32.dll</filename> (bundled)</entry> </row> <row> <entry>php_cybercash.dll</entry> <entry><link linkend="ref.cybercash">Cybercash</link> payment functions</entry> <entry>PHP &lt;= 4.2.0</entry> </row> <row> <entry>php_db.dll</entry> <entry><link linkend="ref.dbm">DBM</link> functions</entry> <entry>Deprecated. Use DBA instead (<filename>php_dba.dll</filename>)</entry> </row> <row> <entry>php_dba.dll</entry> <entry><link linkend="ref.dba">DBA</link>: DataBase (dbm-style) Abstraction layer functions</entry> <entry>None</entry> </row> <row> <entry>php_dbase.dll</entry> <entry><link linkend="ref.dbase">dBase</link> functions</entry> <entry>None</entry> </row> <row> <entry>php3_dbm.dll</entry> <entry>Berkeley DB2 library</entry> <entry>unknown</entry> </row> <row> <entry>php_dbx.dll</entry> <entry><link linkend="ref.dbx">dbx</link> functions</entry> <entry></entry> </row> <row> <entry>php_domxml.dll</entry> <entry><link linkend="ref.domxml">DOM XML</link> functions</entry> <entry> PHP &lt;= 4.2.0 requires: <filename>libxml2.dll</filename> (bundled) PHP &gt;= 4.3.0 requires: <filename>iconv.dll</filename> (bundled) </entry> </row> <row> <entry>php_dotnet.dll</entry> <entry><link linkend="ref.dotnet">.NET</link> functions</entry> <entry>PHP &lt;= 4.1.1</entry> </row> <row> <entry>php_exif.dll</entry> <entry><link linkend="function.read-exif-data">Read EXIF</link> headers from JPEG</entry> <entry>None</entry> </row> <row> <entry>php_fbsql.dll</entry> <entry><link linkend="ref.fbsql">FrontBase</link> functions</entry> <entry>PHP &lt;= 4.2.0</entry> </row> <row> <entry>php_fdf.dll</entry> <entry><link linkend="ref.fdf">FDF</link>: Forms Data Format functions.</entry> <entry>Requires: <filename>fdftk.dll</filename> (bundled)</entry> </row> <row> <entry>php_filepro.dll</entry> <entry><link linkend="ref.filepro">filePro</link> functions</entry> <entry>Read-only access</entry> </row> <row> <entry>php_ftp.dll</entry> <entry><link linkend="ref.ftp">FTP</link> functions</entry> <entry>Built-in since PHP 4.0.3</entry> </row> <row> <entry>php_gd.dll</entry> <entry><link linkend="ref.image">GD</link> library image functions</entry> <entry> Removed in PHP 4.3.2. Also note that truecolor functions are not available in GD1, instead, use <filename>php_gd2.dll</filename>. </entry> </row> <row> <entry>php_gd2.dll</entry> <entry><link linkend="ref.image">GD</link> library image functions</entry> <entry>GD2</entry> </row> <row> <entry>php_gettext.dll</entry> <entry><link linkend="ref.gettext">Gettext</link> functions</entry> <entry> PHP &lt;= 4.2.0 requires <filename>gnu_gettext.dll</filename> (bundled), PHP &gt;= 4.2.3 requires <filename>libintl-1.dll</filename>, <filename>iconv.dll</filename> (bundled). </entry> </row> <row> <entry>php_hyperwave.dll</entry> <entry><link linkend="ref.hw">HyperWave</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_iconv.dll</entry> <entry><link linkend="ref.iconv">ICONV</link> characterset conversion</entry> <entry>Requires: <filename>iconv-1.3.dll</filename> (bundled), PHP &gt;=4.2.1 <filename>iconv.dll</filename></entry> </row> <row> <entry>php_ifx.dll</entry> <entry><link linkend="ref.ifx">Informix</link> functions</entry> <entry>Requires: Informix libraries</entry> </row> <row> <entry>php_iisfunc.dll</entry> <entry>IIS management functions</entry> <entry>None</entry> </row> <row> <entry>php_imap.dll</entry> <entry><link linkend="ref.imap">IMAP</link> POP3 and NNTP functions</entry> <entry>PHP 3: <filename>php3_imap4r1.dll</filename></entry> </row> <row> <entry>php_ingres.dll</entry> <entry><link linkend="ref.ingres">Ingres II</link> functions</entry> <entry>Requires: Ingres II libraries</entry> </row> <row> <entry>php_interbase.dll</entry> <entry><link linkend="ref.ibase">InterBase</link> functions</entry> <entry>Requires: <filename>gds32.dll</filename> (bundled)</entry> </row> <row> <entry>php_java.dll</entry> <entry><link linkend="ref.java">Java</link> functions</entry> <entry>PHP &lt;= 4.0.6 requires: <filename>jvm.dll</filename> (bundled)</entry> </row> <row> <entry>php_ldap.dll</entry> <entry><link linkend="ref.ldap">LDAP</link> functions</entry> <entry> PHP &lt;= 4.2.0 requires <filename>libsasl.dll</filename> (bundled), PHP &gt;= 4.3.0 requires <filename>libeay32.dll</filename>, <filename>ssleay32.dll</filename> (bundled) </entry> </row> <row> <entry>php_mbstring.dll</entry> <entry><link linkend="ref.mbstring">Multi-Byte String</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_mcrypt.dll</entry> <entry><link linkend="ref.mcrypt">Mcrypt Encryption</link> functions</entry> <entry>Requires: <filename>libmcrypt.dll</filename></entry> </row> <row> <entry>php_mhash.dll</entry> <entry><link linkend="ref.mhash">Mhash</link> functions</entry> <entry>PHP &gt;= 4.3.0 requires: <filename>libmhash.dll</filename> (bundled)</entry> </row> <row> <entry>php_mime_magic.dll</entry> <entry><link linkend="ref.mime-magic">Mimetype</link> functions</entry> <entry>Requires: <filename>magic.mime</filename> (bundled)</entry> </row> <row> <entry>php_ming.dll</entry> <entry><link linkend="ref.ming">Ming</link> functions for Flash</entry> <entry>None</entry> </row> <row> <entry>php_msql.dll</entry> <entry><link linkend="ref.msql">mSQL</link> functions</entry> <entry>Requires: <filename>msql.dll</filename> (bundled)</entry> </row> <row> <entry>php3_msql1.dll</entry> <entry>mSQL 1 client</entry> <entry>unknown</entry> </row> <row> <entry>php3_msql2.dll</entry> <entry>mSQL 2 client</entry> <entry>unknown</entry> </row> <row> <entry>php_mssql.dll</entry> <entry><link linkend="ref.mssql">MSSQL</link> functions</entry> <entry>Requires: <filename>ntwdblib.dll</filename> (bundled)</entry> </row> <row> <entry>php3_mysql.dll</entry> <entry><link linkend="ref.mysql">MySQL</link> functions</entry> <entry>Built-in in PHP 4</entry> </row> <row> <entry>php3_nsmail.dll</entry> <entry>Netscape mail functions</entry> <entry>unknown</entry> </row> <row> <entry>php3_oci73.dll</entry> <entry>Oracle functions</entry> <entry>unknown</entry> </row> <row> <entry>php_oci8.dll</entry> <entry><link linkend="ref.oci8">Oracle 8</link> functions</entry> <entry>Requires: Oracle 8.1+ client libraries</entry> </row> <row> <entry>php_openssl.dll</entry> <entry><link linkend="ref.openssl">OpenSSL</link> functions</entry> <entry>Requires: <filename>libeay32.dll</filename> (bundled)</entry> </row> <row> <entry>php_oracle.dll</entry> <entry><link linkend="ref.oracle">Oracle</link> functions</entry> <entry>Requires: Oracle 7 client libraries</entry> </row> <row> <entry>php_overload.dll</entry> <entry><link linkend="ref.overload">Object overloading</link> functions</entry> <entry>Built in since PHP 4.3.0</entry> </row> <row> <entry>php_pdf.dll</entry> <entry><link linkend="ref.pdf">PDF</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_pgsql.dll</entry> <entry><link linkend="ref.pgsql">PostgreSQL</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_printer.dll</entry> <entry><link linkend="ref.printer">Printer</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_shmop.dll</entry> <entry><link linkend="ref.shmop">Shared Memory</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_snmp.dll</entry> <entry><link linkend="ref.snmp">SNMP</link> get and walk functions</entry> <entry>NT only!</entry> </row> <row> <entry>php_sockets.dll</entry> <entry><link linkend="ref.sockets">Socket</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_sybase_ct.dll</entry> <entry><link linkend="ref.sybase">Sybase</link> functions</entry> <entry>Requires: Sybase client libraries</entry> </row> <row> <entry>php_tokenizer.dll</entry> <entry><link linkend="ref.tokenizer">Tokenizer</link> functions</entry> <entry>Built in since PHP 4.3.0</entry> </row> <row> <entry>php_w32api.dll</entry> <entry><link linkend="ref.w32api">W32api</link> functions</entry> <entry>None</entry> </row> <row> <entry>php_xmlrpc.dll</entry> <entry><link linkend="ref.xmlrpc">XML-RPC</link> functions</entry> <entry>PHP &gt;= 4.2.1 requires: <filename>iconv.dll</filename> (bundled)</entry> </row> <row> <entry>php_xslt.dll</entry> <entry><link linkend="ref.xslt">XSLT</link> functions</entry> <entry> PHP &lt;= 4.2.0 requires <filename>sablot.dll</filename>, <filename>expat.dll</filename> (bundled). PHP &gt;= 4.2.1 requires <filename>sablot.dll</filename>, <filename>expat.dll</filename>, <filename>iconv.dll</filename> (bundled). </entry> </row> <row> <entry>php_yaz.dll</entry> <entry><link linkend="ref.yaz">YAZ</link> functions</entry> <entry>Requires: <filename>yaz.dll</filename> (bundled)</entry> </row> <row> <entry>php_zip.dll</entry> <entry><link linkend="ref.zip">Zip File</link> functions</entry> <entry>Read only access</entry> </row> <row> <entry>php_zlib.dll</entry> <entry><link linkend="ref.zlib">ZLib</link> compression functions</entry> <entry>Built in since PHP 4.3.0</entry> </row> </tbody> </tgroup> </table> </para> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/iis.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/iis.xml +++ phpdoc/en/install/windows/iis.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.windows.iis"> <title>Microsoft IIS / PWS</title> <para> This section contains notes and hints specific to IIS (Microsoft Internet Information Server). Installing PHP for <link linkend="install.iis.iis3">PWS/IIS 3</link>, <link linkend="install.iis.pws4">PWS 4 or newer</link> and <link linkend="install.iis.iis4">IIS 4 or newer</link> versions. </para> <note> <title>Important for CGI users</title> <para> Read the <link linkend="faq.installation.forceredirect">faq on cgi.force_redirect</link> for important details. This directive needs to be set to <literal>0</literal>. </para> </note> <sect2 id="install.windows.iis.iis3"> <title>Windows and PWS/IIS 3</title> <simpara> The recommended method for configuring these servers is to use the REG file included with the distribution (pws-php4cgi.reg). You may want to edit this file and make sure the extensions and PHP install directories match your configuration. Or you can follow the steps below to do it manually. </simpara> <warning> <para> These steps involve working directly with the Windows registry. One error here can leave your system in an unstable state. We highly recommend that you back up your registry first. The PHP Development team will not be held responsible if you damage your registry. </para> </warning> <para> <itemizedlist> <listitem> <simpara> Run Regedit. </simpara> </listitem> <listitem> <simpara> Navigate to: <literal>HKEY_LOCAL_MACHINE /System /CurrentControlSet /Services /W3Svc /Parameters /ScriptMap</literal>. </simpara> </listitem> <listitem> <simpara> On the edit menu select: <literal>New->String Value</literal>. </simpara> </listitem> <listitem> <simpara> Type in the extension you wish to use for your php scripts. For example <literal>.php</literal> </simpara> </listitem> <listitem> <simpara> Double click on the new string value and enter the path to <literal>php.exe</literal> in the value data field. ex: <literal>c:\php\php.exe</literal>. </simpara> </listitem> <listitem> <simpara> Repeat these steps for each extension you wish to associate with PHP scripts. </simpara> </listitem> </itemizedlist> </para> <para> The following steps do not affect the web server installation and only apply if you want your PHP scripts to be executed when they are run from the command line (ex. run <filename>c:\myscripts\test.php</filename>) or by double clicking on them in a directory viewer window. You may wish to skip these steps as you might prefer the PHP files to load into a text editor when you double click on them. </para> <para> <itemizedlist> <listitem> <simpara> Navigate to: <literal>HKEY_CLASSES_ROOT</literal> </simpara> </listitem> <listitem> <simpara> On the edit menu select: <literal>New->Key</literal>. </simpara> </listitem> <listitem> <simpara> Name the key to the extension you setup in the previous section. ex: <literal>.php</literal> </simpara> </listitem> <listitem> <simpara> Highlight the new key and in the right side pane, double click the "default value" and enter <literal>phpfile</literal>. </simpara> </listitem> <listitem> <simpara> Repeat the last step for each extension you set up in the previous section. </simpara> </listitem> <listitem> <simpara> Now create another <literal>New->Key</literal> under <literal>HKEY_CLASSES_ROOT</literal> and name it <literal>phpfile</literal>. </simpara> </listitem> <listitem> <simpara> Highlight the new key <literal>phpfile</literal> and in the right side pane, double click the "default value" and enter <literal>PHP Script</literal>. </simpara> </listitem> <listitem> <simpara> Right click on the <literal>phpfile</literal> key and select <literal>New->Key</literal>, name it <literal>Shell</literal>. </simpara> </listitem> <listitem> <simpara> Right click on the <literal>Shell</literal> key and select <literal>New->Key</literal>, name it <literal>open</literal>. </simpara> </listitem> <listitem> <simpara> Right click on the <literal>open</literal> key and select <literal>New->Key</literal>, name it <literal>command</literal>. </simpara> </listitem> <listitem> <simpara> Highlight the new key <literal>command</literal> and in the right side pane, double click the "default value" and enter the path to <literal>php.exe</literal>. ex: <literal>c:\php\php.exe -q %1</literal>. (don't forget the <literal>%1</literal>). </simpara> </listitem> <listitem> <simpara> Exit Regedit. </simpara> </listitem> <listitem> <simpara> If using PWS on Windows, reboot to reload the registry. </simpara> </listitem> </itemizedlist> </para> <simpara> PWS and IIS 3 users now have a fully operational system. IIS 3 users can use a nifty <ulink url="&url.iiscfg;">tool</ulink> from Steven Genusa to configure their script maps. </simpara> </sect2> <sect2 id="install.windows.iis.pws4"> <title>Windows and PWS 4 or newer</title> <simpara> When installing PHP on Windows with PWS 4 or newer version, you have two options. One to set up the PHP CGI binary, the other is to use the ISAPI module DLL. </simpara> <para> If you choose the CGI binary, do the following: <itemizedlist> <listitem> <simpara> Edit the enclosed <filename>pws-php4cgi.reg</filename> file (look into the SAPI dir) to reflect the location of your <filename>php.exe</filename>. Backslashes should be escaped, for example: <literal>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w3svc\parameters\Script Map] ".php"="c:\\php\\php.exe"</literal> Now merge this registery file into your system; you may do this by double-clicking it. </simpara> </listitem> <listitem> <simpara> In the PWS Manager, right click on a given directory you want to add PHP support to, and select Properties. Check the 'Execute' checkbox, and confirm. </simpara> </listitem> </itemizedlist> </para> <para> If you choose the ISAPI module, do the following: <itemizedlist> <listitem> <simpara> Edit the enclosed <filename>pws-php4isapi.reg</filename> file (look into the SAPI dir) to reflect the location of your <filename>php4isapi.dll</filename>. Backslashes should be escaped, for example: <literal>[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w3svc\parameters\Script Map] ".php"="c:\\php\\sapi\\php4isapi.dll"</literal> Now merge this registery file into your system; you may do this by double-clicking it. </simpara> </listitem> <listitem> <simpara> In the PWS Manager, right click on a given directory you want to add PHP support to, and select Properties. Check the 'Execute' checkbox, and confirm. </simpara> </listitem> </itemizedlist> </para> </sect2> <sect2 id="install.windows.iis.iis4"> <title>Windows NT/2000/XP and IIS 4 or newer</title> <simpara> To install PHP on an NT/2000/XP Server running IIS 4 or newer, follow these instructions. You have two options to set up PHP, using the CGI binary (php.exe) or with the ISAPI module. </simpara> <simpara> In either case, you need to start the Microsoft Management Console (may appear as 'Internet Services Manager', either in your Windows NT 4.0 Option Pack branch or the Control Panel=&gt;Administrative Tools under Windows 2000/XP). Then right click on your Web server node (this will most probably appear as 'Default Web Server'), and select 'Properties'. </simpara> <para> If you want to use the CGI binary, do the following: <itemizedlist> <listitem> <simpara> Under 'Home Directory', 'Virtual Directory', or 'Directory', click on the 'Configuration' button, and then enter the App Mappings tab. </simpara> </listitem> <listitem> <simpara> Click Add, and in the Executable box, type: <literal>c:\php\php.exe</literal> (assuming that you have unziped PHP in c:\php\). </simpara> </listitem> <listitem> <simpara> In the Extension box, type the file name extension you want associated with PHP scripts. Leave 'Method exclusions' blank, and check the Script engine checkbox. You may also like to check the 'check that file exists' box - for a small performance penalty, IIS (or PWS) will check that the script file exists and sort out authentication before firing up php. This means that you will get sensible 404 style error messages instead of cgi errors complaining that PHP did not output any data. </simpara> <simpara> You must start over from the previous step for each extension you want associated with PHP scripts. <literal>.php</literal> and <literal>.phtml</literal> are common, although <literal>.php3</literal> may be required for legacy applications. </simpara> </listitem> <listitem> <simpara> Set up the appropriate security. (This is done in Internet Service Manager), and if your NT Server uses NTFS file system, add execute rights for I_USR_ to the directory that contains <literal>php.exe</literal>. </simpara> </listitem> </itemizedlist> </para> <para> To use the ISAPI module, do the following: <itemizedlist> <listitem> <simpara> If you don't want to perform HTTP Authentication using PHP, you can (and should) skip this step. Under ISAPI Filters, add a new ISAPI filter. Use PHP as the filter name, and supply a path to the php4isapi.dll. </simpara> </listitem> <listitem> <simpara> Under 'Home Directory', click on the 'Configuration' button. Add a new entry to the Application Mappings. Use the path to the php4isapi.dll as the Executable, supply <literal>.php</literal> as the extension, leave Method exclusions blank, and check the Script engine checkbox. </simpara> </listitem> <listitem> <simpara> Stop IIS completely (NET STOP iisadmin) </simpara> </listitem> <listitem> <simpara> Start IIS again (NET START w3svc) </simpara> </listitem> </itemizedlist> </para> </sect2> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/index.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/index.xml +++ phpdoc/en/install/windows/index.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <chapter id="install.windows"> <title>Installation on Windows systems</title> <para> This section applies to Windows 98/Me and Windows NT/2000/XP. PHP will not work on 16 bit platforms such as Windows 3.1 and sometimes we refer to the supported Windows platforms as Win32. Windows 95 is no longer supported as of PHP 4.3.0. </para> <para> There are two main ways to install PHP for Windows: either <link linkend="install.windows.manual">manually</link> or by using the <link linkend="install.windows.installer">InstallShield</link> installer. </para> <para> If you have Microsoft Visual Studio, you can also <link linkend="install.windows.build">build</link> PHP from the original source code. </para> <para> Once you have PHP installed on your Windows system, you may also want to <link linkend="install.windows.extensions">load various extensions</link> for added functionality. </para> &install.windows.installer; &install.windows.manual; &install.windows.iis; &install.windows.apache1; &install.windows.apache2; &install.windows.building; &install.windows.extensions; </chapter> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/installer.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/installer.xml +++ phpdoc/en/install/windows/installer.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.windows.installer"> <title>Windows InstallShield</title> <para> The Windows PHP installer is available from the downloads page at <ulink url="&url.php.downloads;">&url.php.downloads;</ulink>. This installs the <emphasis>CGI version</emphasis> of <literal>PHP</literal> and, for IIS, PWS, and Xitami, configures the web server as well. </para> <note> <para> While the InstallShield installer is an easy way to make <literal>PHP</literal> work, it is restricted in many aspects, as automatic setup of extensions for example is not supported. The whole set of supported extensions is only available by downloading the zip binary distribution. </para> </note> <simpara> Install your selected <acronym>HTTP</acronym> server on your system and make sure that it works. </simpara> <simpara> Run the executable installer and follow the instructions provided by the installation wizard. Two types of installation are supported - standard, which provides sensible defaults for all the settings it can, and advanced, which asks questions as it goes along. </simpara> <simpara> The installation wizard gathers enough information to set up the &php.ini; file and configure the web server to use PHP. For IIS and also PWS on NT Workstation, a list of all the nodes on the server with script map settings is displayed, and you can choose those nodes to which you wish to add the PHP script mappings. </simpara> <simpara> Once the installation has completed the installer will inform you if you need to restart your system, restart the server, or just start using PHP. </simpara> <warning> <para> Be aware, that this setup of PHP is not secure. If you would like to have a secure PHP setup, you'd better go on the manual way, and set every option carefully. This automatically working setup gives you an instantly working PHP installation, but it is not meant to be used on online servers. </para> </warning> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 --> http://cvs.php.net/co.php/phpdoc/en/install/windows/manual.xml?r=1.1&p=1 Index: phpdoc/en/install/windows/manual.xml +++ phpdoc/en/install/windows/manual.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <sect1 id="install.windows.manual"> <title>Manual Installation Steps</title> <simpara> This install guide will help you manually install and configure PHP on your Windows webserver. The original version of this guide was compiled by &link.bob;, and can be found at <ulink url="&url.win32install;">&url.win32install;</ulink>. You need to download the zip binary distribution from the downloads page at <ulink url="&url.php.downloads;">&url.php.downloads;</ulink>. </simpara> <para> PHP 4 for Windows comes in three flavours - a CGI executable (php.exe), a CLI executable (sapi/php.exe) and some other SAPI modules: <simplelist> <member> <filename>php4apache.dll</filename> - Apache 1.3.x module </member> <member> <filename>php4apache2.dll</filename> - Apache 2.0.x module </member> <member> <filename>php4isapi.dll</filename> - ISAPI Module for ISAPI compliant webservers like IIS 4.0/PWS 4.0 or newer. </member> <member> <filename>php4nsapi.dll</filename> - Netscape/iPlanet module </member> </simplelist> The latter form is new to PHP 4, and provides significantly improved performance and some new functionality. The CLI version is designed to use PHP for command line scripting. More information about CLI is available in the chapter about <link linkend="features.commandline">using PHP from the command line</link> </para> <warning> <simpara> The SAPI modules have been significantly improved in the 4.1 release, however, you may find that you encounter possible server errors or other server modules such as ASP failing, in older systems. </simpara> </warning> <note> <title>DCOM and MDAC requirements</title> <para> If you choose one of the SAPI modules and use <emphasis>Windows 95</emphasis>, be sure to download and install the DCOM update from the <ulink url="&url.dcom.update;">Microsoft DCOM pages</ulink>. If you use Microsoft <emphasis>Windows 9x/NT4</emphasis> download the latest version of the Microsoft Data Access Components (MDAC) for your platform. MDAC is available at <ulink url="&url.mdac;">&url.mdac;</ulink>. </para> </note> <para> The following steps should be performed on all installations before any server specific instructions. <itemizedlist> <listitem> <simpara> Extract the distribution file to a directory of your choice, <filename class="directory">c:\</filename> is a good start. The zip package expands to a foldername like <filename>php-4.3.1-Win32</filename> which is assumed to be renamed to <filename>php</filename>. For the sake of convenience and to be version independent the following steps assume your extracted version of PHP lives in <filename class="directory">c:\php</filename>. You might choose any other location but you probably do not want to use a path in which spaces are included (for example: <filename class="directory">C:\Program Files\PHP</filename> is not a good idea). Some web servers will crash if you do. The structure of your directory you extracted the zip file will look like: </simpara> </listitem> </itemizedlist> <informalexample> <programlisting> <![CDATA[ c:\php | +--cli | | | |-php.exe -- CLI executable - ONLY for commandline scripting | | +--dlls -- support dlls for extensions --> Windows system directory | | | |-expat.dll | | | |-fdftk.dll | | | |-... | +--extensions -- extension dlls for PHP | | | |-php_bz2.dll | | | |-php_cpdf.dll | | | |-.. | +--mibs -- support files for SNMP | | +--openssl -- support files for Openssl | | +--pdf-related -- support files for PDF | | +--sapi -- SAPI dlls | | | |-php4apache.dll | | | |-php4apache2.dll | | | |-php4isapi.dll | | | |-.. | |-install.txt | |-.. | |-php.exe -- CGI executable | |-.. | |-php.ini-dist | |-php.ini-recommended | |-php4ts.dll -- main dll --> Windows system directory | |-... ]]> </programlisting> </informalexample> </para> <para> The CGI binary - <filename>c:\php\php.exe</filename> -, the CLI binary - <filename>c:\php\cli\php.exe</filename> -, and the SAPI modules - <filename>c:\php\sapi\*.dll</filename> - rely on the main dll <filename>c:\php\php4ts.dll</filename>. You have to make sure, that this dll can be found by your PHP installation. The search order for this dll is as follows: <simplelist> <member> The same directory from where <filename>php.exe</filename> is called. In case you use a SAPI module the same directory from where your webserver loads the dll (e.g. <filename>php4apache.dll</filename>). </member> <member> Any directory in your Windows <varname>PATH</varname> environment variable. </member> </simplelist> <itemizedlist> <listitem> <para> The best bet is to make <filename>php4ts.dll</filename> available, regardless which interface (CGI or SAPI module) you plan to use. To do so, you have to copy this dll to a directory on your Windows path. The best place is your Windows system directory: <simplelist> <member> <filename class="directory">C:\Windows\System</filename> for Windows 9x/ME </member> <member> <filename class="directory">C:\WINNT\System32</filename> for Windows NT/2000 or <filename class="directory">C:\WINNT40\System32</filename> for NT/2000 server </member> <member> <filename class="directory">C:\Windows\System32</filename> for Windows XP </member> </simplelist> If you plan to use a SAPI module from <filename class="directory">c:\php\sapi</filename> and do not like to copy dlls to your Windows system directory, you have the alternative choice to simply copy <filename>php4ts.dll</filename> to the sapi folder of your extracted zip package, <filename class="directory">c:\php\sapi</filename>. </para> </listitem> <listitem> <para> The next step is to set up a valid configuration file for PHP, &php.ini;. There are two ini files distributed in the zip file, <filename>php.ini-dist</filename> and <filename>php.ini-recommended</filename>. We advise you to use <filename>php.ini-recommended</filename>, because we optimized the default settings in this file for performance, and security. Read this well documented file carefully and in addition study the <link linkend="configuration.file">ini settings</link> and set every element manually yourself. If you would like to achieve the best security, then this is the way for you, although PHP works fine with these default ini files. Copy your chosen ini-file to a directory where PHP is able to find and rename it to &php.ini;. By default PHP searches &php.ini; in your Windows directory: <simplelist> <member> On Windows 9x/ME/XP copy your chosen ini file to your <filename> %WINDIR%</filename>, which is typically <filename class="directory">C:\Windows</filename>. </member> <member> On Windows NT/2000 copy your chosen ini file to your <filename>%WINDIR%</filename> or <filename>%SYSTEMROOT%</filename>, which is typically <filename class="directory">C:\WINNT</filename> or <filename class="directory">C:\WINNT40</filename> for NT/2000 servers. </member> </simplelist> </para> </listitem> <listitem> <simpara> If you're using NTFS on Windows NT, 2000 or XP, make sure that the user running the webserver has read permissions to your &php.ini; (e.g. make it readable by Everyone). </simpara> </listitem> </itemizedlist> </para> <para> The following steps are optional. <itemizedlist> <listitem> <para> Edit your new &php.ini; file. If you plan to use <link linkend="install.omnihttpd">OmniHTTPd</link>, do not follow the next step. Set the <link linkend="ini.doc-root">doc_root</link> to point to your webservers document_root. For example: <informalexample> <programlisting role="ini"> <![CDATA[ doc_root = c:\inetpub // for IIS/PWS doc_root = c:\apache\htdocs // for Apache ]]> </programlisting> </informalexample> </para> </listitem> <listitem> <simpara> Choose which extensions you would like to load when PHP starts. See the section about <link linkend="install.windows.extensions">Windows extensions</link>, about how to set up one, and what is already built in. Note that on a new installation it is advisable to first get PHP working and tested without any extensions before enabling them in &php.ini;. </simpara> </listitem> <listitem> <simpara> On PWS and IIS, you can set the <link linkend="ini.browscap">browscap</link> configuration setting to point to: <filename>c:\windows\system\inetsrv\browscap.ini</filename> on Windows 9x/Me, <filename>c:\winnt\system32\inetsrv\browscap.ini</filename> on NT/2000, and <filename>c:\windows\system32\inetsrv\browscap.ini</filename> on XP. </simpara> </listitem> </itemizedlist> </para> <para> Following this instructions you are done with the basic steps to setup PHP on Windows. The next step is to choose a webserver and enable it to run PHP. Installation instructions for the following webservers are available: <itemizedlist> <listitem> <simpara> .. the <link linkend="install.iis">Windows server family</link>, Personal Web server (PWS) 3 and 4 or newer; Internet Information Server (IIS) 3 and 4 or newer. </simpara> </listitem> <listitem> <simpara> .. the Apache servers <link linkend="install.apache.windows">Apache 1.3.x</link>, and <link linkend="install.apache2.windows">Apache 2.x</link>. </simpara> </listitem> <listitem> <simpara> .. the <link linkend="install.netscape.windows">Netscape/iPlanet</link> servers. </simpara> </listitem> <listitem> <simpara> .. the <link linkend="install.omnihttpd">OmniHTTPd</link> server. </simpara> </listitem> <listitem> <simpara> .. the <link linkend="install.oreilly">Oreilly Website Pro</link> server. </simpara> </listitem> <listitem> <simpara> .. the <link linkend="install.sambar">Sambar</link> server. </simpara> </listitem> <listitem> <simpara> .. the <link linkend="install.xitami">Xitami</link> server. </simpara> </listitem> </itemizedlist> </para> </sect1> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->
« previous php.doc (#969361157) next »