1 初始化yum.repo
#!/bin/sh wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm //rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm //rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm rpm -ivh remi-release-6.rpm epel-release-6-8.noarch.rpm sed -i 's/enabled=0/enabled=1/g' /etc/yum.repos.d/remi.repo
2 初始化 [nginx] repo
/etc/yum.respos.d/nginx.repo
name=nginx repo baseurl=http://nginx.org/packages/OS/OSRELEASE/$basearch/ gpgcheck=0 enabled=1
OS
: rhel
, centos
OSRELEASE: 5 , 6 , 7
3 安装
#!/bin/bash
yum -y -x compat-libstdc++-296 groupinstall \
'Compatibility libraries' \
'Development tools' \
'MySQL Database client' \
'MySQL Database server' \
'PHP Support' \
'SNMP Support' \
'Server Platform' \
'Web Server' || exit 1
PKGS=$(cat << _EOF
cronolog
httpd-devel.$ARCH
glibc-utils
bind-utils
ipmitool
lftp
libevent-devel.$ARCH
lighttpd-mod_mysql_vhost
login_keepalived
lrzsz
memcached
mysql-devel.$ARCH
mysql++-devel.$ARCH
nfs-utils
php-devel.$ARCH
php-embedded
php-fpm
php-mbstring
php-mcrypt
php-mysql
php-pecl-igbinary
php-pecl-imagick
php-pecl-memcache
php-pecl-memcached
php-pecl-zendopcache
php-process
redis
screen
telnet
unrar
unzoo
unzip
xinetd
_EOF
)
yum -y install `echo $PKGS` || exit 1
4 mysqld
cp /etc/my.cnf ${path}/my-${mark}.cnf
vim ${path}/my-${mark}.cnf
mysql_install_db --defaults-file=${path}/my-${mark}.cnf >/dev/null
chown mysql:mysql ${datadir} -R
mysqld_safe --defaults-file=${path}/my-${mark}.cnf >/dev/null 2>&1 &
mysql --socket=${socket} -u root -p${password} << _EOF
DELETE FROM mysql.user WHERE user != 'root' OR host != 'localhost';
DELETE FROM mysql.db;
DELETE FROM mysql.proxies_priv WHERE user != 'root' OR host != 'localhost';
_EOF
#shut
mysqladmin --socket=${sock}-uroot -p"YourPassword" shutdown
5 php-fpm
修改配置:vim /etc/php-fpm.conf
启动 /usr/sbin/php-fpm -c /etc/php-fpm.conf
6 nginx调用php-fpm
location ~ \.php$ {
if ($request_filename ~* (.*)\.php) {
set $php_url $1;
}
if (!-e $php_url.php) {
return 403;
}
fastcgi_pass 127.0.0.1:9000; #php-fpm service
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}