Centos 6.5 上yum安裝lighttpd+php-fpm

平臺:Centos 6.5 x86_64javascript

聽說Lighttpd對動態網頁和圖片處理很強,安裝試試,以php-fpm方式管理fastcgiphp

1,安裝lighttpdcss

rpm -Uvh http://mirrors.yun-idc.com/epel/6/x86_64/epel-release-6-8.noarch.rpmhtml

yum update -yjava

yum install -y lighttpd lighttpd-fastcgimysql

2,安裝phpweb

rpm -Uvh https://mirror.webtatic.com/yum/el6/latest.rpmsql

yum install -y php55w php55w-common php55w-cli php55w-mysql php55w-gd php55w-fpm php55w-intl php55w-mcrpt php55w-mbstring php55w-mcrypt php55w-pdo php55w-pear php55w-soap php55w-tidy php55w-xml php55w-xmlrpc  php55w-opcache php55w-develshell

sed -i 's/expose_php = On/expose_php = Off/g' /etc/php.ini apache

sed -i 's/;date.timezone =/date.timezone = PRC/g' /etc/php.ini

sed -i 's/disable_functions =.*/disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server/g' /etc/php.ini


3,簡單配置(2G vps)

sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=1/g' /etc/php.ini

sed -i 's/user = apache/user = lighttpd/g' /etc/php-fpm.d/www.conf
sed -i 's/group = apache/group = lighttpd/g' /etc/php-fpm.d/www.conf
sed -i 's/pm.max_children = 50/pm.max_children = 100/g' /etc/php-fpm.d/www.conf
sed -i 's/pm.start_servers = 5/pm.start_servers = 10/g' /etc/php-fpm.d/www.conf
sed -i 's/pm.min_spare_servers = 5/pm.min_spare_servers = 10/g' /etc/php-fpm.d/www.conf
sed -i 's/pm.max_spare_servers = 35/pm.max_spare_servers = 70/g' /etc/php-fpm.d/www.conf
sed -i 's/;pm.max_requests = 500/pm.max_requests = 10240/g' /etc/php-fpm.d/www.conf
sed -i 's/;rlimit_files = 1024/rlimit_files = 51200/g' /etc/php-fpm.d/www.conf
chkconfig --level 235 php-fpm on
service php-fpm start
ulimit -HSn 65535
chown -R lighttpd:lighttpd /var/lib/php/session/
 


sed -i 's/server.use-ipv6 = "enable"/server.use-ipv6 = "disable"/g' /etc/lighttpd/lighttpd.conf
sed -i 's/#server.max-fds = 2048/server.max-fds = 4096/g' /etc/lighttpd/lighttpd.conf
sed -i 's/server.max-connections = 1024/server.max-connections = 2048/g' /etc/lighttpd/lighttpd.conf
sed -i 's/server.stat-cache-engine = "simple"/server.stat-cache-engine = "fam"/g' /etc/lighttpd/lighttpd.conf
mkdir -p /var/www//htdocs
chown -R lighttpd:lighttpd /var/www//htdocs
chkconfig --levels 235 lighttpd on

sed -i 's%#include "conf.d/fastcgi.conf"%include "conf.d/fastcgi.conf"%g' /etc/lighttpd/modules.conf
mkdir -p /var/cache/lighttpd/compress
chown -R lighttpd:lighttpd /var/cache/lighttpd/compress
sed -i 's%#include "conf.d/compress.conf"%include "conf.d/compress.conf"%g' /etc/lighttpd/modules.conf
sed -i 's%compress.filetype          = ("text/plain", "text/html")%compress.filetype          = ("text/plain", "text/html","application/x-javascript", "text/css", "application/javascript", "text/javascript")%g' /etc/lighttpd/conf.d/compress.conf

cat  >>  /etc/lighttpd/conf.d/fastcgi.conf<<-EOF
fastcgi.server += ( ".php" =>
        ((
                "host" => "127.0.0.1",
                "port" => "9000",
                "broken-scriptfilename" => "enable",
                "check-local" => "disable",
        ))
)
EOF
若用unix socket
vi /etc/php-fpm.d/www.conf 將
listen 127.0.0.1:9000改成
listen /var/run/php-fpm/php-cgi.sock
touch /var/run/php-fpm/php-cgi.sock
chown lighttpd:lighttpd /var/run/php-fpm/php-cgi.sock
cat  >>  /etc/lighttpd/conf.d/fastcgi.conf<<-EOF
fastcgi.server += ( ".php" =>
        ((
                "socket" => "/var/run/php-fpm/php-cgi.sock",
                "broken-scriptfilename" => "enable",
                "check-local" => "disable",
        ))
)

service php-fpm restart
service lighttpd restart

4,測試

echo '<?php phpinfo(); ?>' > /var/www//htdocs/index.php

http://yourserverip
看到phpinfo結果即完成

 

用php-cgi管理fastcgi,配置Lighttpd以下:

mkdir -p /var/www//html
chown -R lighttpd:lighttpd /var/www/html
chkconfig --levels 235 lighttpd on
# vi /etc/lighttpd/lighttpd.conf

server.document-root = server_root + "/html"

sed -i 's/server.use-ipv6 = "enable"/server.use-ipv6 = "disable"/g' /etc/lighttpd/lighttpd.conf
sed -i 's/#server.max-fds = 2048/server.max-fds = 2048/g' /etc/lighttpd/lighttpd.conf
sed -i 's/server.stat-cache-engine = "simple"/server.stat-cache-engine = "fam"/g' /etc/lighttpd/lighttpd.conf

1. vim /etc/php.ini
   找到cgi.fix_pathinfo,將其值置爲1,結果爲:"cgi.fix_pathinfo=1"

2. vim /etc/lighttpd/modules.conf
   找到include "conf.d/fastcgi.conf",將其前面的註釋刪除。


3.Configure php as fastcgi
# For a large server set max-procs, PHP_FCGI_CHILDREN, and PHP_FCGI_MAX_REQUESTS as per your setup ##

cat >> /etc/lighttpd/conf.d/fastcgi.conf<<-EOF
fastcgi.server    = ( ".php" =>
  ((
        "bin-path" => "/usr/bin/php-cgi",
        "socket" => "/tmp/php-cgi.socket." + var.PID,
        "max-procs" => 1,
        "idle-timeout" => 30,
        "bin-environment" => (
                "PHP_FCGI_CHILDREN" => "1",
                "PHP_FCGI_MAX_REQUESTS" => "50"
        ),
        "bin-copy-environment" => (
                "PATH",
                "SHELL",
                "USER"
        ),
        "broken-scriptfilename" => "enable"
  ))
)
EOF


service lighttpd restart

echo '<?php phpinfo(); ?>' > /var/www//html/index.php

http://yourserverip  

相關文章
相關標籤/搜索