1. 程式人生 > >LNP 安裝部署

LNP 安裝部署

lnp

一、安裝nginx

1.安裝依賴包:

yum install openssl openssl-devel pcre GeoIP perl-devel perl perl-ExtUtils-Embed GeoIP-devel libatomic libatomic_ops-devel

2.安裝zlib

tar -xf zlib-1.2.11.tar.gz 
cd zlib-1.2.11
./configure 
make
make install

3.添加用戶

adduser nginx -s /sbin/nologin

4.編譯安裝nginx

tar -xf nginx-1.10.3.tar.gz
cd nginx-1.10.3
./configure  --prefix=/usr/local/nginx --pid-path=/usr/local/nginx --user=nginx --group=nginx --with-threads --with-file-aio --with-http_ssl_module --with-http_v2_module  --with-http_addition_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_perl_module --with-http_geoip_module --with-http_gunzip_module --with-http_auth_request_module --with-mail --with-http_gzip_static_module --with-http_auth_request_module  --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_slice_module --with-http_stub_status_module --with-http_perl_module --with-zlib=/tmp/soft/zlib-1.2.11 --with-stream --with-stream_ssl_module --with-pcre --with-libatomic
make
make install

5.添加腳本

cd /etc/init.d/
vim nginx 
#!/bin/bash
# nginx Startup script for the Nginx HTTP Server
# it is v.0.0.2 version.
# chkconfig: - 85 15
# description: Nginx is a high-performance web and proxy server.
#       It has a lot of features, but it‘s not for everyone.
# processname: nginx
# pidfile: /usr/local/nginx/logs/nginx.pid
# config: /usr/local/nginx/conf/nginx.conf
nginxd=/usr/local/nginx/sbin/nginx
nginx_config=/usr/local/nginx/conf/nginx.conf
nginx_pid=/usr/local/nginx/logs/nginx.pid
RETVAL=0
prog="nginx"
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
# Check that networking is up.
[ "${NETWORKING}" = "no" ] && exit 0
[ -x $nginxd ] || exit 0
# Start nginx daemons functions.
start() {
if [ -e $nginx_pid ];then
  echo "nginx already running...."
  exit 1
fi
  echo -n $"Starting $prog: "
  daemon $nginxd -c ${nginx_config}
  RETVAL=$?
  echo
  [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx
  return $RETVAL
}
# Stop nginx daemons functions.
stop() {
    echo -n $"Stopping $prog: "
    killproc $nginxd
    RETVAL=$?
    echo
    [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /usr/local/nginx/logs/nginx.pid
}
# reload nginx service functions.
reload() {
  echo -n $"Reloading $prog: "
  #kill -HUP `cat ${nginx_pid}`
  killproc $nginxd -HUP
  RETVAL=$?
  echo
}
# See how we were called.
case "$1" in
start)
    start
    ;;
stop)
    stop
    ;;
reload)
    reload
    ;;
restart)
    stop
    start
    ;;
status)
    status $prog
    RETVAL=$?
    ;;
*)
    echo $"Usage: $prog {start|stop|restart|reload|status|help}"
    exit 1
esac
exit $RETVAL

重新裝載:

systemctl daemon-reload

啟動nginx

systemctl start nginx.service

二、安裝PHP

1.安裝依賴包

yum -y install make apr* autoconf automake curl-devel gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel gd  kernel keyutils  patch  perl kernel-headers mpfr cpp glibc libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel krb5-devel zlib-devel libXpm* freetype libjpeg* libpng* php-common php-gd ncurses* libtool* libxml2 libxml2-devel patch

2.安裝libmcrypt

tar -xf libmcrypt-2.5.8.tar.gz 
cd libmcrypt-2.5.8
./configure 
make
make install

3.安裝libxml2

tar -xf libxml2-2.8.0.tar.gz 
cd libxml2-2.8.0
./configure --prefix=/usr/local/libxml2
make
make install

4.安裝libpng

tar -xf libpng-1.5.28.tar.xz 
cd libpng-1.5.28
./configure --prefix=/usr/local/libpng
make
make install

5.安裝jpeg9

tar -xf jpegsrc.v9b.tar.gz 
cd jpeg-9b/
./configure --prefix=/usr/local/jpeg9 --enable-shared
make
make install

6.安裝gettext

tar -xf gettext-0.19.8.tar.xz 
cd gettext-0.19.8
./configure 
make
make install

7.安裝libpng

tar -xf libgd-2.2.4.tar.xz 
cd libgd-2.2.4
./configure --prefix=/usr/local/libgd --with-zlib --with-png=/usr/local/libpng --with-jpeg=/usr/local/jpeg9
make
make install

8.安裝freetype

 wget http://download.savannah.gnu.org/releases/freetype/freetype-2.7.1.tar.gz
tar -xf freetype-2.7.1.tar.gz 
cd freetype-2.7.1
./configure --prefix=/usr/local/freetype
make
make install

9.安裝libiconv

tar -xf libiconv-1.15.tar.gz 
cd libiconv-1.15
./configure --prefix=/usr/local/libiconv
make
make install

10.安裝php-5.6

tar -xf php-5.6.30.tar.xz 
cd php-5.6.30
./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-mysql --with-mysqli --with-pdo-mysql --enable-pdo --with-pdo-sqlite --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf  --enable-opcache --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --with-libxml-dir=/usr/local/libxml2 --with-gd --with-jpeg-dir=/usr/local/jpeg9 --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype
make
make install

11.添加用戶

adduser -s /sbin/nologin php


12.配置php

cp php.ini-production /usr/local/php5/etc/php.ini
rm -f /etc/php.ini 
ln -s /usr/local/php5/etc/php.ini /etc/php.ini
cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf
cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm
chmod +x /etc/rc.d/init.d/php-fpm

13.安裝opcache

cd /tmp/soft/php-5.6.30
cd ext/opcache/
# /usr/local/php5/bin/phpize 
# ./configure --with-php-config=/usr/local/php5/bin/php-config
# make
# make install
Installing shared extensions:     /usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/
Installing PHP CLI binary:        /usr/local/php5/bin/
Installing PHP CLI man page:      /usr/local/php5/php/man/man1/
Installing PHP FPM binary:        /usr/local/php5/sbin/
Installing PHP FPM config:        /usr/local/php5/etc/
Installing PHP FPM man page:      /usr/local/php5/php/man/man8/
Installing PHP FPM status page:   /usr/local/php5/php/php/fpm/
Installing PHP CGI binary:        /usr/local/php5/bin/
Installing PHP CGI man page:      /usr/local/php5/php/man/man1/
Installing build environment:     /usr/local/php5/lib/php/build/
Installing header files:           /usr/local/php5/include/php/
Installing helper programs:       /usr/local/php5/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php5/php/man/man1/
  page: phpize.1
  page: php-config.1
/tmp/soft/php-5.6.30/build/shtool install -c ext/phar/phar.phar /usr/local/php5/bin
ln -s -f phar.phar /usr/local/php5/bin/phar
Installing PDO headers:           /usr/local/php5/include/php/ext/pdo/

14.添加opcache

vim /etc/php.ini
.....
[opcache]
zend_extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20131226/opcache.so
opcache.enable=1
opcache.memory_consumption=256
opcache.interned_strings_buffer=4
opcache.max_accelerated_files=8000
opcache.max_wasted_percentage=5
opcache.use_cwd=1
opcache.validate_timestamps=1
opcache.revalidate_freq=0
opcache.revalidate_path=0
opcache.save_comments=0
opcache.load_comments=0
opcache.force_restart_timeout=3600


本文出自 “深呼吸再出擊” 博客,請務必保留此出處http://ckl893.blog.51cto.com/8827818/1924259

LNP 安裝部署