LNMP环境执行脚本

LNMP脚本说明:

使用的源码包文件
igbinary-1.1.1
libevent-2.0.16-stable
libiconv-1.13.1
libmcrypt-2.5.8
mcrypt-2.6.8.
memcache-2.2.6
mhash-0.9.9.9
mongodb-1.3.1
mysql-5.6.40
nginx-1.14.0
php-5.6.33
redis-2.2.8

Nginx安装路径 /usr/local/nginx
Php安装路径 /usr/local/php
Mysql安装路径 /usr/local/myslq

Php所需要编译的模块
Bcmat bz2 Core ctype curl date dom ereg fileinfo filter ftp gd gettext
Hash iconv igbinary json libxml mbstring mcrypt memcache mhash
Mongodb mysql mysqli openssl pcntl pcre PDO pdo_mysql Phar posix
Redis Reflection session shmop SimpleXML soap sockets SPL standard
Sysvsem tokenizer xml xmlreader xmlrpc xmlwriter xs zip zlib

脚本执行安装完毕后进行nginx配置文件的修改

LNMP-auto.sh脚本详情

#!/bin/bash

install_log=/var/log/install-error.log
install_log1=/var/log/install-correct.log

cd /usr/local/src 2>> $install_log

yum -y groupinstall "Development Tools" 2>> $install_log
yum -y install gcc gcc-c++ libtool libtool-libs autoconf 2>> $install_log
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel 2>> $install_log
yum -y install libxml2 libxml2-devel zlib zlib-devel gd gd-devel 2>> $install_log
yum -y install glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel 2>> $install_log
yum -y install ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel 2>> $install_log
yum -y install krb5 krb5-devel libidn libidn-devel bison 2>> $install_log
yum -y install libxslt libxslt-devel 2>> $install_log
yum -y install vim-enhanced.x86_64 2>> $install_log
yum -y install lrzsz 2>> $install_log

############################################################################################
#nginx 安装

yum -y  install gcc gcc-c++ pcre-devel zlib-devel openssl openssl-devel 2>> $install_log

useradd -r -s /sbin/nologin -u 80 www

cd /usr/local/src

tar -xf nginx-1.14.0.tar.gz

cd nginx-1.14.0

./configure --prefix=/usr/local/nginx \
--user=www \
--group=www \
--with-http_stub_status_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_realip_module 2>> $install_log

make 2>> $install_log 
make install 2>> $install_log

cp -a /usr/local/src/scripts/nginx.conf /usr/local/nginx/conf/ 2>> $install_log

#############################################################################################
#MySQL 安装

yum -y install ncurses ncurses-devel cmake bison
                                                        
groupadd mysql 2>> $install_log

useradd -g mysql -r -s /sbin/nologin mysql 2>> $install_log

mkdir -p /data/mysql

cd /usr/local/src 2>> $install_log

tar -zxvf mysql-5.6.40.tar.gz 2>> $install_log

cd mysql-5.6.40/ 2>> $install_log

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/data/mysql \
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_READLINE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_DEBUG=0 2>> $install_log

make 2>> $install_log

make install 2>> $install_log

cd /usr/local/mysql 2>> $install_log

chown -R root . 2>> $install_log
chown -R mysql data 2>> $install_log
chown -R mysql.mysql /data/mysql

cp support-files/my-default.cnf /etc/my.cnf 2>> $install_log

sed -i '18c basedir = /usr/local/mysql' /etc/my.cnf
sed -i '19c datadir = /data/mysql'
sed -i '22c socket = /tmp/mysql.sock' /etc/my.cnf

yum install -y perl-Module-Install.noarch 2>> $install_log

#usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir=/data/mysql/ --basedir=/usr/local/mysql/ 2>> $install_log
#usr/local/mysql/bin/mysqld_safe -user=mysql & 2>> $install_log
#usr/local/mysql/bin/mysqladmin -uroot password 123 2>> $install_log

#####################################################################
#   php安装

yum -y install openldap openldap-devel python-devel     

cd /usr/local/src

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

cd /usr/local/src
tar -xf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure && make && make install
cd  libltdl/
./configure --enable-ltdl-install && make && make install

cd /usr/local/src
tar -xf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9
./configure && make && make install

cd /usr/local/src
tar -xf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8
export LD_LIBRARY_PATH=/usr/local/lib
./configure && make && make install

cd /usr/local/src
tar -xf libevent-2.0.16-stable.tar.gz
cd libevent-2.0.16-stable
./configure && make && make install
cd /usr/local/src

#include ld.so.conf.d/*.conf
#/usr/local/mysql/lib
#/usr/local/lib
#/usr/local/lib64

echo "/usr/local/lib" >> /etc/ld.so.conf
ldconfig

cd /usr/local/src
tar -xf php-5.6.33.tar.gz
cd php-5.6.33

./configure --prefix=/usr/local/php \
--with-config-file-path=/usr/local/php/etc \
--enable-fpm \
--with-fpm-user=www \
--with-fpm-group=www \
--with-libevent-dir=/usr/local \
--with-mysql=/usr/local/mysql \
--with-mysqli=/usr/local/mysql/bin/mysql_config \
--with-pdo-mysql=/usr/local/mysql \
--with-openssl \
--without-pdo-sqlite \
--without-sqlite \
--without-sqlite3 \
--with-gd \
--enable-gd-native-ttf \
--with-gettext \
--with-iconv-dir=/usr/local \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--with-xsl \
--disable-rpath \
--enable-safe-mode \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--with-curlwrappers \
--enable-mbregex \
--enable-mbstring \
--with-mcrypt \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--enable-zip \
--with-bz2 \
--enable-ftp \
--disable-ipv6 \
--enable-zend-multibyte \
--enable-bcmath 2>> $install_log

make ZEND_EXTRA_LIBS='-liconv' -j 2  2>> $install_log

make install 2>> $install_log

cp -a /usr/local/src/scripts/php.ini /usr/local/php/etc/ 2>> $install_log
cp -a /usr/local/src/scripts/php-fpm.conf /usr/local/php/etc/ 2>> $install_log
rm -rf /usr/local/src/scripts/php.ini
rm -rf /usr/local/src/scripts/php-fpm.conf

#cp -a /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf 2>> $install_log

#sed -i '25s/;/ /' /usr/local/php/etc/php-fpm.conf 2>> $install_log

###########################################################################################

#修改nginx.conf

#sed -i '44c \\t    root   /data/webroot;' /usr/local/nginx/conf/nginx.conf 2>> $install_log
#sed -i '45c \\t    index  index.php index.html index.htm;' /usr/local/nginx/conf/nginx.conf 2>> $install_log
#sed -i '65,71s/#/ /' /usr/local/nginx/conf/nginx.conf 2>> $install_log
#sed -i '66c \\t    root           /data/webroot;' /usr/local/nginx/conf/nginx.conf 2>> $install_log
#sed -i '69c \\t     fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;' /usr/local/nginx/conf/nginx.conf 2>> $install_log

###########################################################################################

mkdir  /data/webroot

###########################################################################################
#添加动态扩展模块
yum -y install autoconf

cd /usr/local/src
tar -xf mongodb-1.3.1.tgz
cd mongodb-1.3.1
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config && make && make install 1>> $install_log1 

cd /usr/local/src
tar -xf igbinary-1.1.1.tgz
cd igbinary-1.1.1
/usr/local/php/bin/phpize
./configure CFLAGS="-O2 -g" --with-php-config=/usr/local/php/bin/php-config --enable-igbinary && make && make install

cd /usr/local/src
tar -xf redis-2.2.8.tgz
cd redis-2.2.8
/usr/local/php/bin/phpize
./configure --enable-redis-igbinary --with-php-config=/usr/local/php/bin/php-config && make && make install

cd /usr/local/src
tar -xf memcache-2.2.6.tgz
cd memcache-2.2.6
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config && make && make install

#echo "extension_dir=$(cat /var/log/install-correct.log | awk '{print $4}')" >> /usr/local/php/etc/php.ini
#echo "extension=mongodb.so" >> /usr/local/php/etc/php.ini
#echo "extension=redis.so" >> /usr/local/php/etc/php.ini
#echo "extension=memcache.so" >> /usr/local/php/etc/php.ini
#echo "extension=igbinary.so" >> /usr/local/php/etc/php.ini

############################################################################################

echo "/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf" >> /etc/rc.d/rc.local
echo "/usr/local/php/sbin/php-fpm" >> /etc/rc.d/rc.local
mv /usr/local/src/scripts/nginx /etc/init.d/
mv /usr/local/src/scripts/php-fpm /etc/init.d/
chmod 755 /etc/init.d/nginx
chmod 755 /etc/init.d/php-fpm
mkdir -p /data/cache/nginx/fastcgi_cache
mkdir -p /data/nginx/logs

############################################################################################

mkdir -p /data/nginx/etc-conf
#cp -a /etc/nginx/conf.d /data/nginx/etc-conf/conf.d/
mv /usr/local/nginx/conf/* /data/nginx/etc-conf/
mv /usr/local/nginx/conf /usr/local/nginx/other
ln -s /data/nginx/etc-conf /usr/local/nginx/conf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值