标签:FILES -- lnmp PREFIX 自动 install 033 php 安装
#!/bin/bash #auto install LANMP #by author ale #2019-4-30 20:39:04 #Httpd define path variable H_FILES=httpd-2.4.38.tar.gz H_FILES_DIR=httpd-2.4.38 H_URL=http://mirrors.cnnic.cn/apache/httpd/ H_PREFIX=/usr/local/apache #Mysql define path variable M_FILES=mysql-5.5.20.tar.gz M_FILES_DIR=mysql-5.5.20 M_PREFIX=/usr/local/mysql M_YUM="cmake ncurses-devel ncurses pcre pcre-devel" #Php define path variable P_FILES=php-5.6.10.tar.gz P_FILES_DIR=php-5.6.10 P_URL=http://ftp.ntu.edu.tw/php/distributions/ P_PREFIX=/usr/local/php P_YUM="gd curl curl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel" #Nginx define path variable N_FILES=nginx-1.12.2.tar.gz N_FILES_DIR=nginx-1.12.2 N_URL=http://nginx.org/download/ N_PREFIX=/usr/local/nginx N_YUM="openssl openssl-devel" print_menu(){ echo -e "\033[32mPlease Select Install Menu follow:\033[0m" echo -e "\033[32m1)编译安装Apache服务\033[0m" echo -e "\033[32m2)编译安装NGINX服务\033[0m" echo -e "\033[32m3)编译安装MYSQL服务\033[0m" echo -e "\033[32m4)编译安装PHP服务\033[0m" echo -e "\033[32m5)配置index.php并启动LAMP服务\033[0m" echo -e "\033[32m6)整合LNMP\033[0m" exit } apache_install(){ #Install httpd web server if [[ "$1" -eq "1" ]];then wget -c $H_URL/$H_FILES;tar -xzf $H_FILES;cd $H_FILES_DIR;./configure --prefix=$H_PREFIX --enable-so --enable-cgi --enable-rewrite --enable-module=most --enable-mpms-shared=all if [ $? -eq 0 ];then make &&make install cp $H_PREFIX/bin/apachectl /etc/init.d/httpd chmod o+x /etc/init.d/httpd fi fi } nginx_install(){ #Install nginx web server if [[ "$1" -eq "2" ]];then yum install -y $N_YUM wget -c $N_URL/$N_FILES;tar -xzf $N_FILES;cd $N_FILES_DIR;useradd www;./configure --prefix=$N_PREFIX --user=www --group=w ww --with-http_stub_status_module --with-http_ssl_module make && make install fi } mysql_install(){ #Install mysql server if [[ "$1" == "3" ]];then yum install -y $M_YUM tar -xf $M_FILES;cd $M_FILES_DIR;cmake . -DCMAKE_INSTALL_PREFIX=$M_PREFIX \ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \ -DMYSQL_DATADIR=/data/mysql \ -DSYSCONFDIR=/etc \ -DMYSQL_USER=mysql \ -DMYSQL_TCP_PORT=3306 \ -DWITH_XTRADB_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_EXTRA_CHARSETS=1 \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DEXTRA_CHARSETS=all \ -DWITH_BIG_TABLES=1 \ -DWITH_DEBUG=0 make -j4 && make install -j4 cp support-files/my-small.cnf /etc/my.cnf cp support-files/mysql.server /etc/init.d/mysqld useradd mysql;$M_PREFIX/scripts/mysql_install_db --basedir=$M_PREFIX --datadir=/data/mysql --user=mysql chmod +x /etc/init.d/mysqld chkconfig --add mysqld fi } php_install(){ #Install php server if [[ "$1" -eq "4" ]];then yum -y install $P_YUM wget -c $P_URL/$P_FILES;tar -xzf $P_FILES;cd $P_FILES_DIR;./configure --prefix=$P_PREFIX --enable-fpm --with-pdo-mysql --enable-debug --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-mbstring --with-curl --with-mysql=$M_PREFIX --with-config-file-path=$P_PREFIX/etc --with-apxs2=$H_PREFIX/bin/apxs if [ $? -eq 0 ];then make -j4 && make install -j4 cp php.ini-development $P_PREFIX/etc/php.ini cp $P_PREFIX/etc/php-fpm.conf.default $P_PREFIX/etc/php-fpm.conf $M_PREFIX/sbin/php-fpm cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm chmod o+x /etc/init.d/php-fpm echo -e "\033[32mThe Php Server Install Success\033[0m" else echo -e "\033[32mThe Php Server Install Failed,Please check..\033[0m" fi fi } lamp_config(){ if [[ "$1" = "5" ]];then sed -i '/DirectoryIndex/s/index.html/index.php index.html/g' $H_PREFIX/conf/httpd.conf $H_PREFIX/bin/apachectl restart echo "AddType application/x-httpd-php .php" >>$H_PREFIX/conf/httpd.conf IP=`ifconfig ens33|grep "broadcast"|awk '{print $2}'|cut -d: -f2` echo "You can access http://$IP/" cat >$H_PREFIX/htdocs/index.php <<EOF <?php phpinfo(); ?> EOF fi } lnmp_config(){ if [[ "$1" = "6" ]];then \cp nginx.conf.swp $N_PREFIX/conf/nginx.conf cat >$N_PREFIX/html/index.php <<EOF <?php phpinfo(); ?> EOF $N_PREFIX/sbin/nginx /etc/init.d/php-fpm restart /etc/init.d/mysqld restart systemctl stop firewalld setenforce 0 fi } case $1 in 1) apache_install $1 ;; 2) nginx_install $1 ;; 3) mysql_install $1 ;; 4) php_install $1 ;; 5) lamp_config $1 ;; 6) lnmp_config $1 ;; *) print_menu ;; esac
nginx.conf.swp 内容以下
worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } }
标签:FILES,--,lnmp,PREFIX,自动,install,033,php,安装 来源: https://www.cnblogs.com/yanzi2020/p/14435077.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。