source: general/prog/php.xml@ f326e42

10.0 10.1 11.0 11.1 11.2 11.3 12.0 12.1 8.4 9.0 9.1 bdubbs/svn elogind kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk upgradedb xry111/intltool xry111/llvm18 xry111/soup3 xry111/test-20220226 xry111/xf86-video-removal
Last change on this file since f326e42 was f326e42, checked in by Bruce Dubbs <bdubbs@…>, 6 years ago

Update to php-7.2.11.
Update to xkeyboard-config-2.25.
Update to highlight-3.47.

git-svn-id: svn://svn.linuxfromscratch.org/BLFS/trunk/BOOK@20632 af4574ff-66df-0310-9fd7-8a98e5e911e0

  • Property mode set to 100644
File size: 23.9 KB
RevLine 
[08254fc]1<?xml version="1.0" encoding="ISO-8859-1"?>
[6732c094]2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
[08254fc]4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
[577eb27]7 <!ENTITY php-download-http "http://www.php.net/distributions/php-&php-version;.tar.xz">
[0c54cea]8 <!ENTITY php-download-ftp " ">
[f326e42]9 <!ENTITY php-md5sum "28c3d5310a64799fd54c5e49e4982cf9">
[8cb8165]10 <!ENTITY php-size "12 MB">
[4d01d35]11 <!ENTITY php-buildsize "567 MB (add 2 MB for tests, add 111 MB for documentation)">
[f326e42]12 <!ENTITY php-time "1.2 SBU (with parallelism=4; add 2.7 SBU for tests)">
[08254fc]13]>
14
[6683a00]15<sect1 id="php" xreflabel="PHP-&php-version;">
[db81e4cb]16 <?dbhtml filename="php.html"?>
17
18 <sect1info>
19 <othername>$LastChangedBy$</othername>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>PHP-&php-version;</title>
24
25 <indexterm zone="php">
26 <primary sortas="a-PHP">PHP</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to PHP</title>
31
[577eb27]32 <para>
33 <application>PHP</application> is the PHP Hypertext Preprocessor.
34 Primarily used in dynamic web sites, it allows for programming code to be
35 directly embedded into the HTML markup. It is also useful as a
36 general purpose scripting language.
37 </para>
[a5db8d2]38
[07499ecc]39 &lfs83_checked;
[db81e4cb]40
41 <bridgehead renderas="sect3">Package Information</bridgehead>
42 <itemizedlist spacing="compact">
43 <listitem>
[577eb27]44 <para>
45 Download (HTTP): <ulink url="&php-download-http;"/>
46 </para>
[db81e4cb]47 </listitem>
48 <listitem>
[577eb27]49 <para>
50 Download (FTP): <ulink url="&php-download-ftp;"/>
51 </para>
[db81e4cb]52 </listitem>
53 <listitem>
[577eb27]54 <para>
55 Download MD5 sum: &php-md5sum;
56 </para>
[db81e4cb]57 </listitem>
58 <listitem>
[577eb27]59 <para>
60 Download size: &php-size;
61 </para>
[db81e4cb]62 </listitem>
63 <listitem>
[577eb27]64 <para>
65 Estimated disk space required: &php-buildsize;
66 </para>
[db81e4cb]67 </listitem>
68 <listitem>
[577eb27]69 <para>
70 Estimated build time: &php-time;
71 </para>
[db81e4cb]72 </listitem>
73 </itemizedlist>
74
75 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
76 <itemizedlist spacing="compact">
[b84326b7]77 <listitem>
[577eb27]78 <para>
79 Pre-built documentation (optional): <ulink
80 url="http://www.php.net/download-docs.php"/>
81 </para>
[b84326b7]82 </listitem>
[db81e4cb]83 </itemizedlist>
84
85 <bridgehead renderas="sect3">PHP Dependencies</bridgehead>
86
[2f65edb]87 <bridgehead renderas="sect4">Recommended</bridgehead>
[2e4782e]88 <para role="recommended">
89 <xref linkend="apache"/> and
90 <xref linkend="libxml2"/>
91 </para>
[2f65edb]92
[b84326b7]93 <bridgehead renderas="sect4">Optional System Utilities and Libraries</bridgehead>
[577eb27]94 <para role="optional">
95 <xref linkend="aspell"/>,
96 <xref linkend="enchant"/>,
[604bf744]97 <xref linkend="libxslt"/>,
[577eb27]98 an <xref linkend="server-mail"/> (that provides a
[604bf744]99 <command>sendmail</command> command),
100 <xref linkend="pcre"/>,
101 <xref linkend="pth"/>,
102 <ulink url="http://dmalloc.com/">Dmalloc</ulink>,
[577eb27]103 <ulink url="http://www.net-snmp.org/">Net-SNMP</ulink>,
[604bf744]104 <ulink url="http://www.ossp.org/pkg/lib/mm/">OSSP mm</ulink>,
105 <ulink url="http://re2c.org/">re2c</ulink>, and
106 <ulink url="http://xmlrpc-epi.sourceforge.net/main.php?t=php_about">XMLRPC-EPI</ulink>
[577eb27]107 </para>
[b84326b7]108
109 <bridgehead renderas="sect4">Optional Graphics Utilities and Libraries</bridgehead>
[577eb27]110 <para role="optional">
[604bf744]111 <xref linkend="freetype2"/>,
112 <xref linkend="libexif"/>,
[577eb27]113 <xref linkend="libjpeg"/>,
114 <xref linkend="libpng"/>,
[604bf744]115 <xref linkend="libtiff"/>,
[577eb27]116 <xref linkend="x-window-system"/>,
[b8efb1fb]117 <!--<ulink url="http://www.fastio.com/">ClibPDF</ulink>, - site asks for username/password-->
[604bf744]118 <ulink url="http://www.adobe.com/devnet/acrobat/fdftoolkit.html">FDF Toolkit</ulink>,
119 <ulink url="https://bitbucket.org/libgd/gd-libgd/downloads">GD</ulink>, and
[59d1550]120 <ulink url="http://fossies.org/linux/misc/old/t1lib-5.1.2.tar.gz/">t1lib</ulink>
[577eb27]121 </para>
[b84326b7]122
123 <bridgehead renderas="sect4">Optional Web Utilities</bridgehead>
[577eb27]124 <para role="optional">
125 <xref linkend="curl"/>,
[2b65035a]126 <xref linkend="tidy-html5"/>,
[604bf744]127 <ulink url="http://sourceforge.net/projects/caudium/">Caudium</ulink>,
[bd86aa8]128 <ulink url="https://www.hyperwave.com/en/">Hyperwave</ulink>,
[604bf744]129 <ulink url="http://www.mnogosearch.org/">mnoGoSearch</ulink>,
130 <ulink url="http://www.roxen.com/products/webserver/">Roxen WebServer</ulink>, and
[577eb27]131 <ulink url="https://wddxnet.codeplex.com/">WDDX</ulink>
132 </para>
[b84326b7]133
134 <bridgehead renderas="sect4">Optional Data Management Utilities and Libraries</bridgehead>
[577eb27]135 <para role="optional">
[3dda7b8]136 <xref linkend="db"/> (Note that PHP does not officially support versions
137 above 5.3),
[577eb27]138 <xref linkend="mariadb"/> or <ulink url="http://www.mysql.com/">MySQL</ulink>,
[604bf744]139 <xref linkend="openldap"/>,
[577eb27]140 <xref linkend="postgresql"/>,
141 <xref linkend="sqlite"/>,
[604bf744]142 <xref linkend="unixodbc"/>,
143 <ulink url="http://www.softwareag.com/">Adabas</ulink>,
[577eb27]144 <ulink url="http://www.birdstep.com/">Birdstep</ulink>,
[604bf744]145 <ulink url="http://cr.yp.to/cdb.html">cdb</ulink>,
[577eb27]146 <ulink url="http://www.dbmaker.com/">DBMaker</ulink>,
[604bf744]147 <ulink url="http://www.empress.com/">Empress</ulink>,
[b8efb1fb]148 <ulink url="http://www.frontbase.com/cgi-bin/WebObjects/FBWebSite">FrontBase</ulink>,
[604bf744]149 <ulink url="http://www.hughes.com.au/products/msql/">Mini SQL</ulink>,
150 <ulink url="http://www.monetra.com/">Monetra</ulink>, and
151 <ulink url="http://sourceforge.net/projects/qdbm">QDBM</ulink>
[577eb27]152 </para>
153
154 <para>
155 <application>PHP</application> also provides support for many
156 commercial database tools such as <application>Oracle</application>,
157 <application>SAP</application> and
158 <application>ODBC Router</application>.
159 </para>
[e797436]160
[b84326b7]161 <bridgehead renderas="sect4">Optional Security/Encryption Utilities and Libraries</bridgehead>
[577eb27]162 <para role="optional">
163 <xref linkend="cyrus-sasl"/>,
164 <xref linkend="mitkrb"/>,
165 <ulink url="http://mcrypt.sourceforge.net/">libmcrypt</ulink>, and
166 <ulink url="http://mhash.sourceforge.net/">mhash</ulink>
167 </para>
[db81e4cb]168
[577eb27]169 <para condition="html" role="usernotes">
170 User Notes: <ulink url="&blfs-wiki;/php"/>
171 </para>
[1039de3]172
[db81e4cb]173 </sect2>
174
175 <sect2 role="installation">
176 <title>Installation of PHP</title>
177
[577eb27]178 <para>
179 You can use <application>PHP</application> for server-side
180 scripting, command-line scripting or client-side GUI applications. This
181 book provides instructions for setting up <application>PHP</application>
182 for server-side scripting as it is the most common form.
183 </para>
[db81e4cb]184
[b84326b7]185 <note>
[577eb27]186 <para>
187 <application>PHP</application> has many more
188 <command>configure</command> options that will enable support for
189 various things. You can use <command>./configure --help</command> to
190 see a full list of the available options. Also, use of the
191 <ulink url="http://www.php.net/">PHP web site</ulink>
192 is highly recommended, as their online docs are very good. An example
193 of a <command>configure</command> command that utilizes many of the
194 most common dependencies can be found at <ulink
[a29486e4]195 url="&sources-anduin-http;/files/php_configure.txt"/>.
[e797436]196 </para>
[3f87e4a]197
[577eb27]198 <para>
199 If, for whatever reason, you don't have <xref linkend="libxml2"/>
200 installed, you need to add <option>--disable-libxml</option> to the
201 <command>configure</command> command in the instructions below. Note
202 that this will prevent the <command>pear</command> command from being
203 built.
204 </para>
[b84326b7]205 </note>
[3cf45b8]206<!--
[b8efb1fb]207 <para>
208 If you wish to build <application>PHP</application> with the
209 <application>tidy-html5</application> library, due to API changes, in the
210 <application>PHP</application> source, <filename>buffio.h</filename>
211 header needs to be changed to <filename>tidybuffio.h</filename> in the
212 file <filename>ext/tidy/tidy.c</filename>:
213 </para>
214
[3bbde8b5]215<screen><userinput>sed -i 's/buffio.h/tidy&amp;/' ext/tidy/tidy.c</userinput></screen>
[3cf45b8]216-->
[577eb27]217 <para>
218 Install <application>PHP</application> by running the following commands:
219 </para>
[db81e4cb]220
[0098ace6]221<screen revision="sysv"><userinput>./configure --prefix=/usr \
[75033b6]222 --sysconfdir=/etc \
[5178bbf6]223 --localstatedir=/var \
224 --datadir=/usr/share/php \
[81b5be3]225 --mandir=/usr/share/man \
[c0764bc]226 --without-pear \
[5178bbf6]227 --enable-fpm \
228 --with-fpm-user=apache \
229 --with-fpm-group=apache \
[4a93a3c]230 --with-config-file-path=/etc \
[75033b6]231 --with-zlib \
232 --enable-bcmath \
233 --with-bz2 \
234 --enable-calendar \
235 --enable-dba=shared \
236 --with-gdbm \
237 --with-gmp \
238 --enable-ftp \
239 --with-gettext \
240 --enable-mbstring \
241 --with-readline &amp;&amp;
[db81e4cb]242make</userinput></screen>
243
[0098ace6]244<screen revision="systemd"><userinput>./configure --prefix=/usr \
245 --sysconfdir=/etc \
246 --localstatedir=/var \
247 --datadir=/usr/share/php \
248 --mandir=/usr/share/man \
249 --enable-fpm \
[c0764bc]250 --without-pear \
[0098ace6]251 --with-fpm-user=apache \
252 --with-fpm-group=apache \
253 --with-fpm-systemd \
254 --with-config-file-path=/etc \
255 --with-zlib \
256 --enable-bcmath \
257 --with-bz2 \
258 --enable-calendar \
259 --enable-dba=shared \
260 --with-gdbm \
261 --with-gmp \
262 --enable-ftp \
263 --with-gettext \
264 --enable-mbstring \
265 --with-readline &amp;&amp;
266make</userinput></screen>
[577eb27]267 <para>
268 To test the results, issue: <command>make test</command>. A few
269 tests may fail, in which case you are asked whether you want to send
[6dce48a]270 the report to the PHP developers. If you want to automate the test,
[577eb27]271 you may prefix the command with <command>yes "n" | </command>.
272 </para>
[d6f7e6cb]273
[577eb27]274 <para>
275 Now, as the <systemitem class="username">root</systemitem> user:
276 </para>
[db81e4cb]277
[81b5be3]278<!-- dev note: make INSTALL_ROOT=<DESTDIR> install -->
279
[595e58e]280<screen role="root"><userinput>make install &amp;&amp;
281install -v -m644 php.ini-production /etc/php.ini &amp;&amp;
[d6f7e6cb]282
[ba1a38b]283install -v -m755 -d /usr/share/doc/php-&php-version; &amp;&amp;
[75033b6]284install -v -m644 CODING_STANDARDS EXTENSIONS INSTALL NEWS README* UPGRADING* php.gif \
[5a464e4d]285 /usr/share/doc/php-&php-version; &amp;&amp;
286ln -v -sfn /usr/lib/php/doc/Archive_Tar/docs/Archive_Tar.txt \
287 /usr/share/doc/php-&php-version; &amp;&amp;
288ln -v -sfn /usr/lib/php/doc/Structures_Graph/docs \
289 /usr/share/doc/php-&php-version;</userinput></screen>
[db81e4cb]290
[6ca1b179]291 <para>
292 The default configuration files for the fastCGI process manager are
[0639bb6]293 installed only if they do not already exist on the system. If this is
[6ca1b179]294 the first installation, they should be renamed, as the
295 <systemitem class='username'>root</systemitem> user:
296 </para>
297
298<screen role="root"><userinput>if [ -f /etc/php-fpm.conf.default ]; then
299 mv -v /etc/php-fpm.conf{.default,} &amp;&amp;
300 mv -v /etc/php-fpm.d/www.conf{.default,}
301fi</userinput></screen>
302
[577eb27]303 <para>
304 The pre-built HTML documentation is packaged in two forms: a tarball
305 containing many individual files, useful for quick loading into your
306 browser, and one large individual file, which is useful for using the
307 search utility of your browser. If you downloaded either, or both, of the
308 documentation files, issue the following commands as the
309 <systemitem class='username'>root</systemitem> user to install them (note
310 these instructions assume English docs, modify the tarball names below if
311 necessary).
312 </para>
[db81e4cb]313
[577eb27]314 <para>
315 For the <quote>Single HTML</quote> file:
316 </para>
[b84326b7]317
318<screen role="root"><userinput>install -v -m644 ../php_manual_en.html.gz \
319 /usr/share/doc/php-&php-version; &amp;&amp;
320gunzip -v /usr/share/doc/php-&php-version;/php_manual_en.html.gz</userinput></screen>
321
[577eb27]322 <para>
323 For the <quote>Many HTML files</quote> tarball:
324 </para>
[b84326b7]325
[0fb9d5f]326<screen role="root"><userinput>tar -xvf ../php_manual_en.tar.gz \
[a5db8d2]327 -C /usr/share/doc/php-&php-version; --no-same-owner</userinput></screen>
[db81e4cb]328
[c0764bc]329 <para>
330 The bundled pear is not installed because of a bug which might
331 pollute the filesystem with several hidden files and directories.
332 If pear is needed, execucte the following commands to install:
333 </para>
334
335<screen role="nodump"><userinput>wget http://pear.php.net/go-pear.phar
336php ./go-pear.phar</userinput></screen>
337
[db81e4cb]338 </sect2>
[b84326b7]339
[934c9b26]340 <sect2 role="commands">
[577eb27]341 <title>Command Explanations</title>
[db81e4cb]342
[0098ace6]343 <para revision="systemd">
344 <command>sed -i "s|lsystemd-daemon|lsystemd|g" configure</command>:
345 This command fixes the detection of the systemd library.
346 </para>
347
[577eb27]348 <para>
[f1d7196]349 <parameter>--datadir=/usr/share/php</parameter>: This works
[577eb27]350 around a bug in the build machinery, which installs some data to a
351 wrong location.
352 </para>
[5178bbf6]353
[577eb27]354 <para>
355 <parameter>--enable-fpm</parameter>: This parameter allows
356 building the fastCGI Process Manager.
357 </para>
[934c9b26]358
[0098ace6]359 <para revision="systemd">
360 <parameter>--with-fpm-systemd</parameter>: This parameter allows
361 the FastCGI Process Manager to integrate with systemd.
362 </para>
363
[c0764bc]364 <para>
365 <parameter>--without-pear</parameter>: This switch disables
366 installation of bundled pear software.
367 </para>
368
[577eb27]369 <para>
370 <parameter>--with-config-file-path=/etc</parameter>: This parameter
371 makes <application>PHP</application> look for the
372 <filename>php.ini</filename> configuration file in
373 <filename class='directory'>/etc</filename>.
374 </para>
[934c9b26]375
[577eb27]376 <para>
377 <parameter>--with-zlib</parameter>: This parameter adds
378 support for <application>Zlib</application> compression.
379 </para>
[934c9b26]380
[577eb27]381 <para>
382 <parameter>--enable-bcmath</parameter>: Enables
383 <command>bc</command> style precision math functions.
384 </para>
[bccbdaea]385
[577eb27]386 <para>
387 <parameter>--with-bz2</parameter>: Adds support for
388 <application>Bzip2</application> compression functions.
389 </para>
[934c9b26]390
[577eb27]391 <para>
392 <parameter>--enable-calendar</parameter>: This parameter
393 provides support for calendar conversion.
394 </para>
[934c9b26]395
[577eb27]396 <para>
397 <parameter>--enable-dba=shared</parameter>: This parameter enables
398 support for database (dbm-style) abstraction layer functions.
399 </para>
[934c9b26]400
[577eb27]401 <para>
402 <parameter>--enable-ftp</parameter>: This parameter
403 enables FTP functions.
404 </para>
[934c9b26]405
[577eb27]406 <para>
407 <parameter>--with-gettext</parameter>: Enables functions
408 that use <application>Gettext</application> text translation.
409 </para>
[934c9b26]410
[577eb27]411 <para>
412 <parameter>--enable-mbstring</parameter>: This parameter
413 enables multibyte string support.
414 </para>
[934c9b26]415
[577eb27]416 <para>
417 <parameter>--with-readline</parameter>: This parameter
418 enables command line <application>Readline</application> support.
419 </para>
[934c9b26]420
[577eb27]421 <para>
422 <option>--disable-libxml</option>: This option
423 allows building PHP without <application>libxml2</application>
424 installed.
425 </para>
[934c9b26]426
[577eb27]427 <para>
428 <option>--with-apxs2</option>: Instead of building the fastCGI process
429 manager, it is possible to build an <application>apache</application>
430 module. This has some performance penalty for heavy loaded servers,
431 but may be easier to set up. This switch is incompatible with the
432 <parameter>--enable-fpm</parameter> and
433 <parameter>--with-fpm-...</parameter> switches.
434 </para>
[5178bbf6]435
[39ffbd0]436 <para>
[b8efb1fb]437 <option>--with-mysqli=shared</option>: This option includes MySQLi
438 support.
[39ffbd0]439 </para>
440
441 <para>
442 <option>--with-mysql-sock=/run/mysqld/mysqld.sock</option>: Location of
443 the MySQL unix socket pointer.
444 </para>
445
446 <para>
[b8efb1fb]447 <option>--with-pdo-mysql=shared</option>: This option includes PDO:
448 MySQL support.
449 </para>
450
451 <para>
452 <option>--with-tidy=shared</option>: This option includes tidy library
[39ffbd0]453 support.
454 </para>
455
[934c9b26]456 </sect2>
[bccbdaea]457
[db81e4cb]458 <sect2 role="configuration">
459 <title>Configuring PHP</title>
460
461 <sect3 id="php-config">
462 <title>Config Files</title>
463
[577eb27]464 <para>
465 <filename>/etc/php.ini</filename>,
[8f64429]466 <filename>/etc/pear.conf</filename>,
467 <filename>/etc/php-fpm.conf</filename>, and
468 <filename>/etc/php-fpm.d/www.conf</filename>
[577eb27]469 </para>
[db81e4cb]470
471 <indexterm zone="php php-config">
472 <primary sortas="e-etc-php.ini">/etc/php.ini</primary>
473 </indexterm>
474
475 <indexterm zone="php php-config">
476 <primary sortas="e-etc-pear.conf">/etc/pear.conf</primary>
477 </indexterm>
478
[8f64429]479 <indexterm zone="php php-config">
480 <primary sortas="e-etc-php-fpm.d-www.conf">
481 /etc/php-fpm.d/www.conf</primary>
482 </indexterm>
483
[5178bbf6]484 <indexterm zone="php php-config">
485 <primary sortas="e-etc-php-fpm.conf">/etc/php-fpm.conf</primary>
486 </indexterm>
487
[db81e4cb]488 </sect3>
489
490 <sect3>
491 <title>Configuration Information</title>
492
[577eb27]493 <para>
494 The file used as the default <filename>/etc/php.ini</filename>
495 configuration file is recommended by the <application>PHP</application>
496 development team. This file modifies the default behavior of
497 <application>PHP</application>. If no <filename>/etc/php.ini</filename>
498 is used, all configuration settings fall to the defaults. You should
499 review the comments in this file and ensure the changes are acceptable
500 in your particular environment.
501 </para>
[e797436]502
[355b8a9]503 <para>
504 The fastCGI process manager uses the configuration file
505 <filename>/etc/php-fpm.conf</filename>. The default file shipped with
506 PHP includes all the <filename>/etc/php-fpm.d/*.conf</filename> in turn.
507 There is a shipped <filename>/etc/php-fpm.d/www.conf</filename> file,
508 that contains the parameters related to the interaction with the Apache
509 Web server.
510 </para>
511
[577eb27]512 <para>
513 You may have noticed the following from the output of the
514 <command>make install</command> command:
515 </para>
[b84326b7]516
[7c1d541]517<screen><computeroutput>You may want to add: /usr/lib/php to your php.ini include_path</computeroutput></screen>
[b84326b7]518
[577eb27]519 <para>
520 If desired, add the entry using the following command as the
521 <systemitem class="username">root</systemitem> user:
522 </para>
[b84326b7]523
[7c1d541]524<screen role="root"><userinput>sed -i 's@php/includes"@&amp;\ninclude_path = ".:/usr/lib/php"@' \
[b84326b7]525 /etc/php.ini</userinput></screen>
526
[577eb27]527 <para>
528 To enable fastCGI support in the <application>Apache</application>
529 web server, two LoadModule directives must be added to the
530 <filename>httpd.conf</filename> file. They are commented out, so just
531 issue the following command as
532 <systemitem class="username">root</systemitem> user:
533 </para>
[db81e4cb]534
[5178bbf6]535<screen role="root"><userinput>sed -i -e '/proxy_module/s/^#//' \
[7f8868f]536 -e '/proxy_fcgi_module/s/^#//' \
[5178bbf6]537 /etc/httpd/httpd.conf</userinput></screen>
[db81e4cb]538
[577eb27]539 <para>
540 Those modules accept various <command>ProxyPass</command>
541 directives. One possibility is (as the
542 <systemitem class="username">root</systemitem> user):
543 </para>
[5178bbf6]544
545<screen role="root"><userinput>echo \
[7f8868f]546'ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/srv/www/$1' >> \
[5178bbf6]547/etc/httpd/httpd.conf</userinput></screen>
548
[577eb27]549 <para>
550 Additionally, it may be useful to add an entry for
551 <filename>index.php</filename> to the DirectoryIndex directive of the
552 <filename>httpd.conf</filename> file. Lastly, adding a line to setup the
553 <filename class='extension'>.phps</filename> extension to show
554 highlighted <application>PHP</application> source may be
555 desirable:
556 </para>
[e797436]557
558<screen><literal>AddType application/x-httpd-php-source .phps</literal></screen>
[db81e4cb]559
[577eb27]560 <para>
561 You'll need to restart the <application>Apache</application> web server
562 after making any modifications to the <filename>httpd.conf</filename>
563 file.
564 </para>
[db81e4cb]565
566 </sect3>
567
[5178bbf6]568 <sect3 id="php-init">
[0098ace6]569 <title><phrase revision="sysv">Boot Script</phrase>
570 <phrase revision="systemd">Systemd Unit</phrase></title>
[5178bbf6]571
[3c7bd00]572 <para revision="sysv">
[5178bbf6]573 To automatically start the <command>php-fpm</command> daemon when the
574 system is rebooted, install the
575 <filename>/etc/rc.d/init.d/php</filename> bootscript from the
576 <xref linkend="bootscripts"/> package as the
577 <systemitem class="username">root</systemitem> user:
578 </para>
579
[3c7bd00]580 <para revision="systemd">
[0098ace6]581 To start the <command>php-fpm</command> daemon at boot,
582 install the systemd unit from the <xref linkend="systemd-units"/>
583 package by running the following command as the
[3c7bd00]584 <systemitem class="username">root</systemitem> user:
585 </para>
586
587
[5178bbf6]588 <indexterm zone="php php-init">
589 <primary sortas="f-php">php</primary>
590 </indexterm>
591
[3c7bd00]592<screen role="root" revision="sysv"><userinput>make install-php</userinput></screen>
593
594<screen role="root" revision="systemd"><userinput>make install-php-fpm</userinput></screen>
595
[5178bbf6]596 </sect3>
597
[db81e4cb]598 </sect2>
599
600 <sect2 role="content">
601 <title>Contents</title>
602
603 <segmentedlist>
604 <segtitle>Installed Programs</segtitle>
[1c345ed]605 <segtitle>Installed Libraries</segtitle>
[db81e4cb]606 <segtitle>Installed Directories</segtitle>
607
608 <seglistitem>
[8f64429]609 <seg>pear, peardev, pecl, phar (symlink), phar.phar, php,
610 php-cgi, php-config, php-fpm, phpdbg, and phpize</seg>
[17f72f6]611
612 <seg>dba.{so,a} and opcache.{so,a} in
[10023bb]613 /usr/lib/php/extensions/no-debug-non-zts-20170718</seg>
[17f72f6]614
[8f64429]615 <seg>/etc/php-fpm.d, /usr/{include,lib,share}/php and
[ba1a38b]616 /usr/share/doc/php-&php-version;</seg>
[db81e4cb]617 </seglistitem>
618 </segmentedlist>
619
620 <variablelist>
621 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
622 <?dbfo list-presentation="list"?>
623 <?dbhtml list-presentation="table"?>
624
625 <varlistentry id="php-prog">
626 <term><command>php</command></term>
627 <listitem>
[577eb27]628 <para>
629 is a command line interface that enables you to parse and
630 execute PHP code.
631 </para>
[db81e4cb]632 <indexterm zone="php php-prog">
633 <primary sortas="b-php">php</primary>
634 </indexterm>
635 </listitem>
636 </varlistentry>
637
638 <varlistentry id="pear">
639 <term><command>pear</command></term>
640 <listitem>
[577eb27]641 <para>
642 is the PHP Extension and Application Repository (PEAR) package
643 manager.
644 </para>
[db81e4cb]645 <indexterm zone="php pear">
646 <primary sortas="b-pear">pear</primary>
647 </indexterm>
648 </listitem>
649 </varlistentry>
650
[5178bbf6]651 <varlistentry id="php-fpm">
652 <term><command>php-fpm</command></term>
653 <listitem>
[577eb27]654 <para>
655 is the fastCGI process manager for PHP.
656 </para>
[5178bbf6]657 <indexterm zone="php php-fpm">
658 <primary sortas="b-php-fpm">php-fpm</primary>
659 </indexterm>
660 </listitem>
661 </varlistentry>
662
[8f64429]663 <varlistentry id="phpdbg">
664 <term><command>phpdbg</command></term>
665 <listitem>
666 <para>
667 is the interactive PHP debugger.
668 </para>
669 <indexterm zone="php phpdbg">
670 <primary sortas="b-phpdbg">phpdbg</primary>
671 </indexterm>
672 </listitem>
673 </varlistentry>
674
[db81e4cb]675 </variablelist>
676
677 </sect2>
[f45b1953]678
679</sect1>
Note: See TracBrowser for help on using the repository browser.