<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>php-cgi &#8211; lifeLinux: Linux Tips, Hacks, Tutorials, Ebooks</title>
	<atom:link href="https://lifelinux.com/tag/php-cgi/feed/" rel="self" type="application/rss+xml" />
	<link>https://lifelinux.com</link>
	<description>All About Linux !</description>
	<lastBuildDate>Mon, 02 Apr 2012 14:50:59 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.5.3</generator>
	<item>
		<title>How To Install Lighttpd And PHP (PHP-FPM) On CentOS 6</title>
		<link>https://lifelinux.com/how-to-install-lighttpd-and-php-php-fpm-on-centos-6/</link>
					<comments>https://lifelinux.com/how-to-install-lighttpd-and-php-php-fpm-on-centos-6/#respond</comments>
		
		<dc:creator><![CDATA[lifeLinux]]></dc:creator>
		<pubDate>Mon, 02 Apr 2012 12:37:28 +0000</pubDate>
				<category><![CDATA[Lighttpd]]></category>
		<category><![CDATA[Sys Admin]]></category>
		<category><![CDATA[WebServer]]></category>
		<category><![CDATA[64 bit]]></category>
		<category><![CDATA[caching software]]></category>
		<category><![CDATA[enterprise linux]]></category>
		<category><![CDATA[lighttpd init-d startup script]]></category>
		<category><![CDATA[php fastcgi configuration]]></category>
		<category><![CDATA[php-cgi]]></category>
		<category><![CDATA[red hat enterprise]]></category>
		<category><![CDATA[redhat linux]]></category>
		<category><![CDATA[rhel]]></category>
		<category><![CDATA[vi command]]></category>
		<category><![CDATA[web server]]></category>
		<guid isPermaLink="false">http://www.lifelinux.com/?p=1358</guid>

					<description><![CDATA[<p>lighttpd is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible. This tutorial shows how you can install Lighttpd on a CentOS 6 server with PHP (PHP-FPM). First, update CentOS to latest version, login root and type the following command # yum update -y Install some [&#8230;]</p>
<p>The post <a rel="nofollow" href="https://lifelinux.com/how-to-install-lighttpd-and-php-php-fpm-on-centos-6/">How To Install Lighttpd And PHP (PHP-FPM) On CentOS 6</a> appeared first on <a rel="nofollow" href="https://lifelinux.com">lifeLinux: Linux Tips, Hacks, Tutorials, Ebooks</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p></p><p style="text-align: justify;"><strong>lighttpd</strong> is an open-source web server more optimized for speed-critical environments than common products while remaining standards-compliant, secure and flexible. This tutorial shows how you can install Lighttpd on a CentOS 6 server with PHP (PHP-FPM).<br />
<span id="more-1358"></span><br />
First, update CentOS to latest version, login root and type the following command</p>
<pre># yum update -y</pre>
<p>Install some packages need for the following steps</p>
<pre># yum install wget make cpp gcc gcc-c++ -y</pre>
<p>Make a folder where you will store lighttpd and php sources</p>
<pre># mkdir -p /opt/source</pre>
<h2>Installing Lighttpd</h2>
<p>You need to download the latest lighttpd source from <a href="http://www.lighttpd.net/download">http://www.lighttpd.net/download</a> into the /opt/source. Type the following command</p>
<pre># cd /opt/source
# wget http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-1.4.30.tar.gz</pre>
<p>Extract lighttpd-1.4.30.tar.gz package</p>
<pre># tar zxvf lighttpd-1.4.30.tar.gz
# cd lighttpd-1.4.30</pre>
<p>To build lighttpd, type the following command</p>
<pre># ./configure --prefix=/webserver/lighttpd --disable-ipv6
# make
# make install</pre>
<p>During ./configure, you might get some errors like the following</p>
<pre>...
configure: error: pcre-config not found, install the pcre-devel package or build with --without-pcre
...</pre>
<p>To solve the problem, type the following command</p>
<pre># yum install pcre pcre-devel</pre>
<pre>...
configure: error: zlib-headers and/or libs where not found, install them or build with --without-zlib
...</pre>
<p>To solve the problem, type the following command</p>
<pre># yum install zlib zlib-devel</pre>
<pre>...
configure: error: bzip2-headers and/or libs where not found, install them or build with --without-bzip2
...</pre>
<p>To solve the problem, type the following command</p>
<pre># yum install bzip2 bzip2-devel</pre>
<h2>Configuring Lighttpd</h2>
<p>Access to folder of lighttpd, where lighttpd installed [/webserver/lighttpd] and make dirs</p>
<pre># cd /webserver/lighttpd
# mkdir -p etc/init.d
# mkdir -p etc/sysconfig
# mkdir -p www/htdocs
# mkdir -p var/run
# mkdir -p var/log
# mkdir -p var/lock/subsys
# mkdir -p var/cache</pre>
<p>Add a user called &#8220;lighttpd&#8221; and chown all dir made for lighttpd user</p>
<pre># useradd -s /sbin/nologin -d /webserver/lighttpd/www/ lighttpd
# chown lighttpd -R etc
# chown lighttpd -R var
# chown lighttpd -R www</pre>
<p>Return back forder /opt/source/lighttpd-1.4.30 to copy configuration files</p>
<pre># cd /opt/source/lighttpd-1.4.30
# cp doc/config/modules.conf /webserver/lighttpd/etc/
# cp -r doc/config/conf.d /webserver/lighttpd/etc/
# cp -r doc/config/vhosts.d/ /webserver/lighttpd/etc/</pre>
<p>Create default lighttpd configuration file: /webserver/lighttpd/etc/lighttpd.conf (download sample <a href="http://www.lifelinux.com/wp-content/uploads/2012/04/lighttpd.conf_.txt">lighttpd.conf</a> file). Type the following command</p>
<pre># wget http://www.lifelinux.com/wp-content/uploads/2012/04/lighttpd.conf_.txt -O /webserver/lighttpd/etc/lighttpd.conf</pre>
<p>If you want to run lighttpd by default when the system boots, create file called lighttpd in /webserver/lighttpd/etc/init.d/</p>
<pre># vi /webserver/lighttpd/etc/init.d/lighttpd</pre>
<p>Append following line</p>
<pre>#!/bin/sh
#
# lighttpd     Startup script for the lighttpd server
#
# chkconfig: - 85 15
# description: Lightning fast webserver with light system requirements
#
# processname: lighttpd
# config: /webserver/lighttpd/etc/lighttpd.conf
# config: /webserver/lighttpd/etc/sysconfig/lighttpd
# pidfile: /webserver/lighttpd/var/run/lighttpd.pid
#
# Note: pidfile is assumed to be created
# by lighttpd (config: server.pid-file).
# If not, uncomment 'pidof' line.

# Source function library
. /etc/rc.d/init.d/functions

if [ -f /webserver/lighttpd/etc/sysconfig/lighttpd ]; then
	. /webserver/lighttpd/etc/sysconfig/lighttpd
fi

if [ -z "$LIGHTTPD_CONF_PATH" ]; then
	LIGHTTPD_CONF_PATH="/webserver/lighttpd/etc/lighttpd.conf"
fi

prog="lighttpd"
lighttpd="/webserver/lighttpd/sbin/lighttpd"
RETVAL=0

start() {
	echo -n $"Starting $prog: "
	daemon $lighttpd -f $LIGHTTPD_CONF_PATH
	RETVAL=$?
	echo
	[ $RETVAL -eq 0 ] &amp;&amp; touch /webserver/lighttpd/var/lock/subsys/$prog
	return $RETVAL
}

stop() {
	echo -n $"Stopping $prog: "
	killproc $lighttpd
	RETVAL=$?
	echo
	[ $RETVAL -eq 0 ] &amp;&amp; rm -f /webserver/lighttpd/var/lock/subsys/$prog
	return $RETVAL
}

reload() {
	echo -n $"Reloading $prog: "
	killproc $lighttpd -HUP
	RETVAL=$?
	echo
	return $RETVAL
}

case "$1" in
	start)
		start
		;;
	stop)
		stop
		;;
	restart)
		stop
		start
		;;
	condrestart)
		if [ -f /webserver/lighttpd/var/lock/subsys/$prog ]; then
			stop
			start
		fi
		;;
	reload)
		reload
		;;
	status)
		status $lighttpd
		RETVAL=$?
		;;
	*)
		echo $"Usage: $0 {start|stop|restart|condrestart|reload|status}"
		RETVAL=1
esac

exit $RETVAL</pre>
<p>Chmod lighttpd with executed permission and create symbolic link in &#8220;/etc/init.d&#8221;. Type the following command</p>
<pre># chmod +x /webserver/lighttpd/etc/init.d/lighttpd
# ln -s /webserver/lighttpd/etc/init.d/lighttpd /etc/init.d/lighttpd</pre>
<p>Create file called &#8220;lighttpd&#8221; in /webserver/lighttpd/etc/sysconfig</p>
<pre># vi /webserver/lighttpd/etc/sysconfig/lighttpd</pre>
<p>Append following line</p>
<pre>LIGHTTPD_CONF_PATH=/webserver/lighttpd/etc/lighttpd.conf</pre>
<p>To start lighttpd for the first time, type the following command</p>
<pre># /etc/init.d/lighttpd start</pre>
<h2>Install PHP (PHP-FPM)</h2>
<p>Download latest version of PHP at http://download.php.net</p>
<pre># cd /opt/source
# wget http://www.php.net/get/php-5.3.10.tar.gz/from/ca.php.net/mirror</pre>
<p>To Extract its, enter</p>
<pre># tar zxvf php-5.3.10.tar.gz
# cd php-5.3.10</pre>
<p>To build PHP, I&#8217;ll create bash file called build.sh</p>
<pre># vi build.sh</pre>
<p>Append following line</p>
<pre>#!/bin/sh
"./configure" \
"--prefix=/webserver/php" \
"--enable-fpm" \
"--with-libdir=lib64" \
"--with-bz2" \
"--with-config-file-path=/webserver/php/etc" \
"--with-config-file-scan-dir=/webserver/php/etc/php.d" \
"--with-curl=/usr/local/lib" \
"--with-gd" \
"--with-gettext" \
"--with-jpeg-dir=/usr/local/lib" \
"--with-freetype-dir=/usr/local/lib" \
"--with-kerberos" \
"--with-mcrypt" \
"--with-mhash" \
"--with-mysql" \
"--with-mysqli" \
"--with-pcre-regex=/usr" \
"--with-pdo-mysql=shared" \
"--with-pdo-sqlite=shared" \
"--with-pear=/usr/local/lib/php" \
"--with-png-dir=/usr/local/lib" \
"--with-pspell" \
"--with-sqlite=shared" \
"--with-tidy" \
"--with-xmlrpc" \
"--with-xsl" \
"--with-zlib" \
"--with-zlib-dir=/usr/local/lib" \
"--with-openssl" \
"--with-iconv" \
"--enable-bcmath" \
"--enable-calendar" \
"--enable-exif" \
"--enable-ftp" \
"--enable-gd-native-ttf" \
"--enable-libxml" \
"--enable-magic-quotes" \
"--enable-soap" \
"--enable-sockets" \
"--enable-mbstring" \
"--enable-zip" \
"--enable-wddx"</pre>
<p>Type the following command to install PHP</p>
<pre># sh build.sh
# make
# make install</pre>
<p>If you have problems building PHP then read the <a href="http://www.lifelinux.com/error-compiling-php-on-centos-x64/">article</a>. Next step, copy php.ini to /webserver/php/etc/, enter</p>
<pre># cp php.ini-production /webserver/php/etc/php.ini</pre>
<p>Rename php-fpm.conf, enter</p>
<pre># cd /webserver/php/etc
# cp php-fpm.conf.default php-fpm.conf</pre>
<p>Open php-fpm.conf, type</p>
<pre># vi php-fpm.conf</pre>
<p>Append following line</p>
<pre>[global]
pid = run/php-fpm.pid
error_log = log/php-fpm.log
[www]
listen = 127.0.0.1:9000
listen.allowed_clients = 127.0.0.1
user = nobody
group = nobody
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
pm.max_requests = 500</pre>
<p>If you want to run PHP-FPM by default when the system boots, create file called php-fpm in /etc/init.d/</p>
<pre># vi /etc/init.d/php-fpm</pre>
<p>Append following line</p>
<pre>#! /bin/sh

### BEGIN INIT INFO
# Provides:          php-fpm
# Required-Start:    $all
# Required-Stop:     $all
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts php-fpm
# Description:       starts the PHP FastCGI Process Manager daemon
### END INIT INFO

php_fpm_BIN=/webserver/php/sbin/php-fpm
php_fpm_CONF=/webserver/php/etc/php-fpm.conf
php_fpm_PID=/webserver/php/var/run/php-fpm.pid

php_opts="--fpm-config $php_fpm_CONF"

wait_for_pid () {
	try=0

	while test $try -lt 35 ; do

		case "$1" in
			'created')
			if [ -f "$2" ] ; then
				try=''
				break
			fi
			;;

			'removed')
			if [ ! -f "$2" ] ; then
				try=''
				break
			fi
			;;
		esac

		echo -n .
		try=`expr $try + 1`
		sleep 1

	done

}

case "$1" in
	start)
		echo -n "Starting php-fpm "

		$php_fpm_BIN $php_opts

		if [ "$?" != 0 ] ; then
			echo " failed"
			exit 1
		fi

		wait_for_pid created $php_fpm_PID

		if [ -n "$try" ] ; then
			echo " failed"
			exit 1
		else
			echo " done"
		fi
	;;

	stop)
		echo -n "Gracefully shutting down php-fpm "

		if [ ! -r $php_fpm_PID ] ; then
			echo "warning, no pid file found - php-fpm is not running ?"
			exit 1
		fi

		kill -QUIT `cat $php_fpm_PID`

		wait_for_pid removed $php_fpm_PID

		if [ -n "$try" ] ; then
			echo " failed. Use force-exit"
			exit 1
		else
			echo " done"
		fi
	;;

	force-quit)
		echo -n "Terminating php-fpm "

		if [ ! -r $php_fpm_PID ] ; then
			echo "warning, no pid file found - php-fpm is not running ?"
			exit 1
		fi

		kill -TERM `cat $php_fpm_PID`

		wait_for_pid removed $php_fpm_PID

		if [ -n "$try" ] ; then
			echo " failed"
			exit 1
		else
			echo " done"
		fi
	;;

	restart)
		$0 stop
		$0 start
	;;

	reload)

		echo -n "Reload service php-fpm "

		if [ ! -r $php_fpm_PID ] ; then
			echo "warning, no pid file found - php-fpm is not running ?"
			exit 1
		fi

		kill -USR2 `cat $php_fpm_PID`

		echo " done"
	;;

	*)
		echo "Usage: $0 {start|stop|force-quit|restart|reload}"
		exit 1
	;;

esac</pre>
<p>Chmod php-fpm with executed permission, enter</p>
<pre># chmod +x /etc/init.d/php-fpm</pre>
<p>To start PHP-FPM for the first time, type the following command</p>
<pre># /etc/init.d/php-fpm start</pre>
<h2>Configure PHP-FPM and Lighttpd working together</h2>
<p>Uncomment the following line in /webserver/lighttpd/etc/modules.conf</p>
<pre>##
## FastCGI (mod_fastcgi)
##
include "conf.d/fastcgi.conf"</pre>
<p>Open /webserver/lighttpd/etc/conf.d/fastcgi.conf, and append following line</p>
<pre>server.modules += ( "mod_fastcgi" )
fastcgi.server = ( ".php" =&gt;
  ( "php-tcp" =&gt;
    (
      "host" =&gt; "127.0.0.1",
      "port" =&gt; "9000"
    )
  )
)</pre>
<p>Save and close the file. Type the following command to restart Lighttpd</p>
<pre># /etc/init.d/lighttpd restart</pre>
<p>This completes the installation steps. To test php you can create a info.php file in the document root folder</p>
<pre># vi /webserver/lighttpd/www/htdocs/info.php</pre>
<p>Append following line</p>
<pre>&lt;?php
phpinfo();
?&gt;</pre>
<p><a href="http://www.lifelinux.com/wp-content/uploads/2012/04/php-info.jpg"><img loading="lazy" src="http://www.lifelinux.com/wp-content/uploads/2012/04/php-info-300x275.jpg" alt="" title="php-info" width="300" height="275" class="aligncenter size-medium wp-image-1378" srcset="https://lifelinux.com/wp-content/uploads/2012/04/php-info-300x275.jpg 300w, https://lifelinux.com/wp-content/uploads/2012/04/php-info.jpg 627w" sizes="(max-width: 300px) 100vw, 300px" /></a><br />
If you see the above, you have completed a successful installation of lighttpd and php.</p>
<g:plusone href="https://lifelinux.com/how-to-install-lighttpd-and-php-php-fpm-on-centos-6/" size="standard"  annotation="none"   ></g:plusone><p>The post <a rel="nofollow" href="https://lifelinux.com/how-to-install-lighttpd-and-php-php-fpm-on-centos-6/">How To Install Lighttpd And PHP (PHP-FPM) On CentOS 6</a> appeared first on <a rel="nofollow" href="https://lifelinux.com">lifeLinux: Linux Tips, Hacks, Tutorials, Ebooks</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lifelinux.com/how-to-install-lighttpd-and-php-php-fpm-on-centos-6/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
