<commit_before><?xml version="1.0" encoding="UTF-8"?>
<chapter version="5.0" xml:id="flow3.installation"
         xmlns="http://docbook.org/ns/docbook"
         xmlns:ns6="http://www.w3.org/1999/xlink"
         xmlns:ns5="http://www.w3.org/2000/svg"
         xmlns:ns4="http://www.w3.org/1999/xhtml"
         xmlns:ns3="http://www.w3.org/1998/Math/MathML"
         xmlns:ns="http://docbook.org/ns/docbook">
  <title>Installation</title>

  <para>FLOW3 is based on the newest technologies of tomorrow like for example
  namespaces. These technologies aren't available in PHP 5.2, but are
  implemented in PHP 5.3. It has had it's final release in June 2009, so most
  operating system distributors do not provide PHP 5.3 packages yet. You can
  find instructions to install PHP 5.3 for widely used operating systems in
  the appendixes.</para>

  <section xml:id="flow3.installation.requirements">
    <title>Requirements</title>

    <para>The following minimum requirements are operating system independent.
    Developers report working setups on Debian Linux, MacOS, Windows XP and
    Windows Vista and Windows 7.</para>

    <itemizedlist>
      <listitem>
        <para>PHP 5.3.0 or newer (but not PHP 6)<itemizedlist>
            <listitem>
              <para>Modules: mbstring, pdo_sqlite</para>
            </listitem>

            <listitem>
              <para>Configuration: magic_quotes_gpc = off</para>
            </listitem>
          </itemizedlist></para>
      </listitem>

      <listitem>
        <para>A web server, one of:</para>

        <itemizedlist>
          <listitem>
            <para>Apache<itemizedlist>
                <listitem>
                  <para>Apache modules: mod_rewrite</para>
                </listitem>

                <listitem>
                  <para>Apache configuration: AllowOverride FileInfo</para>
                </listitem>
              </itemizedlist></para>
          </listitem>

          <listitem>
            <para>IIS7 on Windows 7 with URL Rewrite has succesfully been
            tested as well.</para>
          </listitem>

          <listitem>
            <para>Cherokee under Mac OS 10.6 (Snow Leopard) is working
            fine.</para>
          </listitem>
        </itemizedlist>
      </listitem>
    </itemizedlist>

    <para>Other webservers could work, but have not been tested until
    now.<warning>
        <para>XAMPP 1.7.2a on MacOS does <emphasis>not</emphasis> work, it
        complains about syntax errors in the source files, probably caused by
        a bug in the implementation of the zend string optimizer.</para>
      </warning><tip>
        <para>We have written <link
        linkend="flow3.installingphp53">installation instructions for PHP
        5.3</link> that might be helpful for you. Also there is a (probably
        incomplete) list of <link linkend="flow3.idesforphp53">IDEs supporting
        PHP 5.3</link>.</para>
      </tip></para>
  </section>

  <section xml:id="flow3.installation.installationofflow3">
    <title>Installation of FLOW3</title>

    <para>These steps require the server requirements to be set up.
    Instruction on how to do that can be found in the appendixes.</para>

    <procedure>
      <step>
        <para>Download the FLOW3 distribution from
        <link ns6:href="http://flow3.typo3.org/download/">http://flow3.typo3.org/download/</link></para>
      </step>

      <step>
        <para>Unpack it to the document root of the webserver (often
        "htdocs")<note>
            <para>It is highly recommended to change the document root of the
            webserver to the <filename>Web</filename> subfolder of the FLOW3
            distribution!</para>
          </note></para>
      </step>

      <step>
        <para>The webserver needs write permissions for some subfolders. The
        FLOW3 distribution provides a helper script for Unix like operating
        systems, which sets the permissions. Change to the top level folder of
        the FLOW3 distribution, from there you need to run the script
        <filename>setfilepermissions.sh</filename>. Execute this script
        providing the CLI user, webserver user and webserver group as parameters.
        On Debian Linux (Lenny) the commando would look like this:</para>

        <para><command>./setfilepermissions.sh johndoe www-data
        www-data</command></para>
      </step>
    </procedure>

    <para>Now you can check if FLOW3 works by pointing your browser to
    <uri>http://<replaceable>&lt;hostname&gt;/</replaceable></uri> . If
    everything works you should see the Welcome screen of the FLOW3
    distribution (this may take some time on the first call, because FLOW3
    needs to initialize itself and to create caching data):<figure>
        <title>The FLOW3 welcome screen</title>

        <screenshot>
          <mediaobject>
            <imageobject>
              <imagedata contentdepth="100%" fileref="WelcomeScreen.png"
                         scalefit="1" width="100%"/>
            </imageobject>
          </mediaobject>
        </screenshot>
      </figure></para>

    <tip>
      <para>On Windows systems PHP causes problems with long filenames. To
      avoid errors you should change the configuration of the cache to a place
      that leads to a very short absolute filepath, for example
      <filename>C:\temp\</filename>. Do that by adding the following lines to
      the file <filename>Configuration/Settings.yaml</filename> in your
      FLOW3-Distribution (the indenting must be done with two
      spaces):<programlisting language="yaml">FLOW3:
  utility:
    environment:
      temporaryDirectoryBase: C:/temp/</programlisting></para>
    </tip>

    <note>
      <para>The persistence framework stores its data in an already set up
      sqlite database by default. It can be changed to a real database like
      for example MySQL. This requires some configuration which will be
      covered here later.</para>
    </note>
  </section>
</chapter>
<commit_msg>[TASK] Update requirements in installation chapter<commit_after><?xml version="1.0" encoding="UTF-8"?>
<chapter version="5.0" xml:id="flow3.installation"
         xmlns="http://docbook.org/ns/docbook"
         xmlns:ns6="http://www.w3.org/1999/xlink"
         xmlns:ns5="http://www.w3.org/2000/svg"
         xmlns:ns4="http://www.w3.org/1999/xhtml"
         xmlns:ns3="http://www.w3.org/1998/Math/MathML"
         xmlns:ns="http://docbook.org/ns/docbook">
  <title>Installation</title>

  <para>FLOW3 is based on the newest technologies of tomorrow like for example
  namespaces. These technologies aren't available in PHP 5.2, but are
  implemented in PHP 5.3. It has had it's final release in June 2009, so most
  operating system distributors do not provide PHP 5.3 packages yet. You can
  find instructions to install PHP 5.3 for widely used operating systems in
  the appendixes.</para>

  <section xml:id="flow3.installation.requirements">
    <title>Requirements</title>

    <para>The following minimum requirements are operating system independent.
    Developers report working setups on Debian Linux, MacOS, Windows Vista and
    Windows 7 (Windows should support symbolic links).</para>

    <itemizedlist>
      <listitem>
        <para>PHP 5.3.2 or newer<itemizedlist>
            <listitem>
              <para>Modules: mbstring, pdo_sqlite</para>
            </listitem>

            <listitem>
              <para>Configuration: magic_quotes_gpc = off</para>
            </listitem>
          </itemizedlist></para>
      </listitem>

      <listitem>
        <para>A web server, one of:</para>

        <itemizedlist>
          <listitem>
            <para>Apache<itemizedlist>
                <listitem>
                  <para>Apache modules: mod_rewrite</para>
                </listitem>

                <listitem>
                  <para>Apache configuration: AllowOverride FileInfo</para>
                </listitem>
              </itemizedlist></para>
          </listitem>

          <listitem>
            <para>IIS7 on Windows 7 with URL Rewrite has succesfully been
            tested as well.</para>
          </listitem>

          <listitem>
            <para>Cherokee under Mac OS 10.6 (Snow Leopard) is working
            fine.</para>
          </listitem>
        </itemizedlist>
      </listitem>
    </itemizedlist>

    <para>Other webservers could work, but have not been tested until
    now.<warning>
        <para>XAMPP 1.7.2a on MacOS does <emphasis>not</emphasis> work, it
        complains about syntax errors in the source files, probably caused by
        a bug in the implementation of the zend string optimizer.</para>
      </warning><tip>
        <para>We have written <link
        linkend="flow3.installingphp53">installation instructions for PHP
        5.3</link> that might be helpful for you. Also there is a (probably
        incomplete) list of <link linkend="flow3.idesforphp53">IDEs supporting
        PHP 5.3</link>.</para>
      </tip></para>
  </section>

  <section xml:id="flow3.installation.installationofflow3">
    <title>Installation of FLOW3</title>

    <para>These steps require the server requirements to be set up.
    Instruction on how to do that can be found in the appendixes.</para>

    <procedure>
      <step>
        <para>Download the FLOW3 distribution from
        <link ns6:href="http://flow3.typo3.org/download/">http://flow3.typo3.org/download/</link></para>
      </step>

      <step>
        <para>Unpack it to the document root of the webserver (often
        "htdocs")<note>
            <para>It is highly recommended to change the document root of the
            webserver to the <filename>Web</filename> subfolder of the FLOW3
            distribution!</para>
          </note></para>
      </step>

      <step>
        <para>The webserver needs write permissions for some subfolders. The
        FLOW3 distribution provides a helper script for Unix like operating
        systems, which sets the permissions. Change to the top level folder of
        the FLOW3 distribution, from there you need to run the script
        <filename>setfilepermissions.sh</filename>. Execute this script
        providing the CLI user, webserver user and webserver group as parameters.
        On Debian Linux (Lenny) the commando would look like this:</para>

        <para><command>./setfilepermissions.sh johndoe www-data
        www-data</command></para>
      </step>
    </procedure>

    <para>Now you can check if FLOW3 works by pointing your browser to
    <uri>http://<replaceable>&lt;hostname&gt;/</replaceable></uri> . If
    everything works you should see the Welcome screen of the FLOW3
    distribution (this may take some time on the first call, because FLOW3
    needs to initialize itself and to create caching data):<figure>
        <title>The FLOW3 welcome screen</title>

        <screenshot>
          <mediaobject>
            <imageobject>
              <imagedata contentdepth="100%" fileref="WelcomeScreen.png"
                         scalefit="1" width="100%"/>
            </imageobject>
          </mediaobject>
        </screenshot>
      </figure></para>

    <tip>
      <para>On Windows systems PHP causes problems with long filenames. To
      avoid errors you should change the configuration of the cache to a place
      that leads to a very short absolute filepath, for example
      <filename>C:\temp\</filename>. Do that by adding the following lines to
      the file <filename>Configuration/Settings.yaml</filename> in your
      FLOW3-Distribution (the indenting must be done with two
      spaces):<programlisting language="yaml">FLOW3:
  utility:
    environment:
      temporaryDirectoryBase: C:/temp/</programlisting></para>
    </tip>

    <note>
      <para>The persistence framework stores its data in an already set up
      sqlite database by default. It can be changed to a real database like
      for example MySQL. This requires some configuration which will be
      covered here later.</para>
    </note>
  </section>
</chapter>

{'fraction_non_alphanumeric': 0.09786741610183501, 'fraction_numerical': 0.015126467184658621, 'mean_word_length': 2.447008547008547, 'pattern_counts': {'":': 0, '<': 279, '<?xml version=': 2, '>': 279, 'https://': 0, 'lorem ipsum': 0, 'www.': 12, 'xml': 20}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2766438', 'n_tokens_mistral': 3502, 'n_tokens_neox': 3322, 'n_words': 1121}