#!/bin/bash # Install script for LEMP Web Server base on CentOS 6/7 by xiaosong cd `pwd` while :; do echo read -p "Please type MariaDB root password:(Default lemp.sh press Enter) " MariaDB_ROOT_PWD [ -z "$MariaDB_ROOT_PWD" ] && MariaDB_ROOT_PWD="lemp.sh" [ -n "`echo $MariaDB_ROOT_PWD | grep '[+|&]'`" ] && { echo "${CWARNING}input error,not contain a plus sign (+) and & ${CEND}"; continue; } break; done . ./utils/init.sh # Install base packages echo "Installing base packages..." sudo yum -y update sudo yum -y install vim wget epel-release unzip git # Install the Required Repositories echo "Installing the Required Repositories..." sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-${CentOS_RHEL_version}.rpm echo "[nginx] name=nginx repo baseurl=http://nginx.org/packages/centos/\$releasever/\$basearch/ gpgcheck=0 enabled=1" > /etc/yum.repos.d/nginx.repo # Install MariaDB echo "Installing MariaDB..." sudo yum install -y mariadb-server # Install Nginx echo "Installing Nginx..." sudo yum install -y nginx # Install PHP echo "Installing PHP..." sudo yum install -y --enablerepo=remi,remi-php71 php-gd php-fpm php-cli php-pdo php-xml php-json php-common php-mcrypt php-mysqlnd php-mbstring php-zip php-opcache php-xmlrpc # Install Composer echo "Installing Composer globally..." curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/bin/composer # Configure Nginx for PHP echo "Configuring Nginx for PHP..." IP=`curl -4 ip.llm.me` sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak sudo cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak sudo cp ./conf/nginx.conf /etc/nginx/nginx.conf sudo cp ./conf/default.conf /etc/nginx/conf.d/default.conf sudo sed -i "s/localhost/$IP `hostname`/g" /etc/nginx/conf.d/default.conf # Configure PHP echo "Configuring PHP..." sudo chown root:nginx /var/lib/php -R sudo sed -i 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo = 0/g' /etc/php.ini sudo sed -i 's/pdo_mysql.default_socket=/pdo_mysql.default_socket = \/var\/lib\/mysql\/mysql.sock/g' /etc/php.ini sudo sed -i 's/mysqli.default_socket =/mysqli.default_socket = \/var\/lib\/mysql\/mysql.sock/g' /etc/php.ini sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 20M/g' /etc/php.ini sudo sed -i 's/post_max_size = 8M/post_max_size = 50M/g' /etc/php.ini sudo sed -i 's/;date.timezone =/date.timezone = "Asia\/Shanghai"/g' /etc/php.ini sudo sed -i 's/expose_php = On/expose_php = Off/g' /etc/php.ini sudo sed -i 's/user = apache/user = nginx/g' /etc/php-fpm.d/www.conf sudo sed -i 's/group = apache/group = nginx/g' /etc/php-fpm.d/www.conf sudo sed -i 's/listen = 127.0.0.1:9000/listen = \/var\/run\/php-fpm.sock/g' /etc/php-fpm.d/www.conf sudo sed -i 's/;listen.owner = nobody/listen.owner = nginx/g' /etc/php-fpm.d/www.conf sudo sed -i 's/;listen.group = nobody/listen.group = nginx/g' /etc/php-fpm.d/www.conf sudo sed -i 's/;listen.mode = 0660/listen.mode = 0660/g' /etc/php-fpm.d/www.conf # Write PHP test file echo "Write PHP test file..." cat >> /usr/share/nginx/html/i.php <