LNMP环境一键部署

LNMP环境一键部署脚本:

#!/bin/bash#用于安装LNMP环境[ ! -d /software/ ] && mkdir /software#功能选择菜单menu(){
        echo -e "\033[31;32m                              LNMP编译安装脚本                                 \033[0m"
        echo -e "\033[31;32m================================================================================\033[0m"
        echo -e "\033[34m   此脚本能直接在rhel7.5、Centos 7.5上成功执行   \033[0m"
        echo -e "\033[33m   安装包版本:  nginx:1.14.0   mysql5.7.23   php7.2.6   \033[0m"
        echo "   相关依赖包:pcre-devel、gd-devel、openssl、openssl-devel、php-mysql、bzip2   "
        echo "               perl-devel、libxml2-devel bzip2-devel libcurl-devel   "
        echo -e "\033[47;34m------------安装需联网下载软件包,若下载地址失效,需自行更新下载地址------------\033[0m"
        echo -e "\033[31;32m================================================================================\033[0m"
        echo -e "\033[33m   nginx安装目录:/usr/local/nginx,日志目录:/data/logs/nginx/   \033[0m"
        echo -e "\033[33m   mysql安装目录:/usr/local/mysql,数据存放目录:/data/mysql/   \033[0m"
        echo -e "\033[33m   php安装目录:/usr/local/php7   \033[0m"
        echo -e "\033[31;32m================================================================================\033[0m"
        echo -e "\033[34m请选择:\033[0m"
        echo -e "\033[36m0、安装依赖包   1、安装nginx   2、源码编译安装mysql   3、安装php   \033[0m"
        echo -e "\033[36m4、整合nginx和php   5、启动nginx、mysql、php-fpm服务   \033[0m"
        echo -e "\033[36m6、一键安装并部署lnmp   7、退出脚本   \033[0m"
        echo -e "\033[31;32m================================================================================\033[0m"
        echo
        read -p "请输入数字:0-5[单独安装](单独安装需要先安装依赖包),6[一键安装],7[退出脚本]: " num}#(0)安装依赖包install_package(){
        cd /software

	    yum install -y vim-enhanced lrzsz net-tools gcc rsync epel-release wget unzip curl
        yum install -y bzip2-devel openssl-devel gnutls-devel gcc gcc-c++ cmake ncurses-devel bison-devel libaio-devel openldap  openldap-devel
        yum install -y autoconf bison libxml2-devel libcurl-devel libevent libevent-devel gd-devel expat-devel numactl        if [ ! -f libmcrypt-2.5.8.tar.gz ]
        then
            wget http://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz        fi

        [ ! -d libmcrypt-2.5.8 ] && tar -zxf libmcrypt-2.5.8.tar.gz        cd libmcrypt-2.5.8
        ./configure && make && make install

        if [ $? -eq 0 ]
        then
               sleep 3               echo -e "\033[36m==========依赖包安装成功==========\033[0m"
          else
               echo -e "\033[31m**********安装依赖包失败,请检查**********\033[0m"
        fi}#(1)编译安装nginxinstall_nginx(){
        cd /software        #1、新建nginx系统用户
        id nginx &> /dev/null        [ $? -ne 0 ] && useradd -r -s /sbin/nologin nginx        #2、新建nginx日志存放目录
        [ ! -d /data/logs/nginx/ ] &&  mkdir -pv /data/logs/nginx/ && chown -R  nginx:nginx /data/logs/nginx/        #3、定义nginx安装的版本
        NGINX_VERS=nginx-1.14.0        #4、下载nginx
        if [ ! -f $NGINX_VERS.tar.gz ]
        then
           echo -e "\033[34m==========正在下载nginx源码包==========\033[0m"
           curl -O  http://nginx.org/download/$NGINX_VERS.tar.gz        fi

        #5、解压下载包
        [ ! -d $NGINX_VERS ] && tar xf $NGINX_VERS.tar.gz        #6、进入nginx解压后的目录
        cd $NGINX_VERS

        #7、编译安装
        ./configure --prefix=/usr/local/nginx \
        --user=nginx \
        --group=nginx \
        --http-log-path=/data/logs/nginx/access.log \
        --error-log-path=/data/logs/nginx/error.log \
        --with-http_ssl_module \
        --with-http_realip_module \
        --with-http_flv_module \
        --with-http_mp4_module \
        --with-http_gunzip_module \
        --with-http_gzip_static_module \
        --with-http_image_filter_module \
        --with-http_stub_status_module &&  make && make install

        if [ $? -eq 0 ]
        then
               sleep 3               echo -e "\033[36m==========nginx编译安装成功==========\033[0m"
        else
               echo -e "\033[31m**********nginx编译安装失败,请检查**********\033[0m"
               exit 1        fi
	
	    cat > /usr/lib/systemd/system/nginx.service << EOF
[Unit]
Description=The nginx HTTP and reverse proxy server
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/run/nginx.pid
# Nginx will fail to start if /run/nginx.pid already exists but has the wrong
# SELinux context. This might happen when running \`nginx -t\` from the cmdline.
# https://bugzilla.redhat.com/show_bug.cgi?id=1268621
ExecStartPre=/usr/bin/rm -f /run/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP \$MAINPIDKillSignal=SIGQUIT
TimeoutStopSec=5
KillMode=process
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF
	    systemctl enable nginx && systemctl daemon-reload}#(2)源码编译安装mysqlinstall_mysql(){
        cd /software

        VERSION=5.7.23      #mysql版本

        if [ ! -f mysql-$VERSION.tar.gz ]
        then
            #下载mysql
            echo -e "\033[34m==========下载mysql源码包==========\033[0m"
            curl -o mysql-$VERSION.tar.gz https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/mysql-$VERSION-linux-glibc2.12-x86_64.tar.gz        fi

        # 1、创建mysql用户
        id mysql &> /dev/null        [ $? -ne 0 ] && useradd -r -s /sbin/nologin mysql        #2、解压mysql
        echo -e "\033[34m==========解压mysql...==========\033[0m"

        if [ -f mysql-$VERSION.tar.gz ]
        then
           tar xvf mysql-$VERSION.tar.gz           mv mysql-$VERSION-* /usr/local/mysql        fi
	
	    #3、创建数据库数据存放目录、安装目录
        [ ! -d  /data/mysql/ ] && mkdir -pv /data/mysql/	    [ ! -f /usr/local/mysql/log/error.log ] && mkdir -pv /usr/local/mysql/log/ && touch /usr/local/mysql/log/error.log        chown -R mysql:mysql  /data/mysql/        chown -R mysql:mysql  /usr/local/mysql/        #4、初始化
	
	    cd /usr/local/mysql	
        if [ $? -eq 0 ]
        then
            echo -e "\033[34m==========数据库开始初始化==========\033[0m"
            ./bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql/  --datadir=/data/mysql/	        if [ $? -eq 0 ]
	        then
		        echo -e "\033[36m==========数据库初始化成功==========\033[0m"
	        else
		        echo -e "\033[31m**********编译安装错误!初始化失败**********\033[0m"
            	exit 1	        fi
        fi

        #5、配置数据库配置文件
        cat > /etc/my.cnf << EOF
[client]
port    = 3306
socket = /usr/local/mysql/tmp/mysql.sock

[mysql]
default-character-set=utf8

[mysqld]
default-storage-engine=INNODB
character_set_server=utf8
explicit_defaults_for_timestamp
basedir=/usr/local/mysql/
datadir=/data/mysql/
socket=/usr/local/mysql/tmp/mysql.sock
log_error = /usr/local/mysql/log/error.log

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
EOF

        [ ! -f /etc/init.d/mysql ] && \cp  /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql        
	    sed -i '46s/basedir=/basedir=\/usr\/local\/mysql/' /etc/init.d/mysql	    sed -i '47s/datadir=/datadir=\/data\/mysql/' /etc/init.d/mysql	
        chmod +x /etc/init.d/mysql	
        #6、配置环境变量
        n=`grep "/usr/local/mysql/bin" /etc/profile |wc -l`
	
	    if [ $n -eq 0 ]
	    then
            echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile            source /etc/profile        else 
            source /etc/profile	    fi

        #7、创建日志目录、/var/run/mysqld/
        [ ! -d /var/log/mysql/ ] && mkdir /var/log/mysql/ && chown -R mysql:mysql /var/log/mysql/        [ ! -d /var/run/mysqld/ ] && mkdir /var/run/mysqld/ && chown -R mysql:mysql /var/run/mysqld/	    [ ! -d /usr/local/mysql/tmp/ ] && mkdir /usr/local/mysql/tmp/ && chown -R mysql:mysql /usr/local/mysql/tmp/	
	    #8、配置成mysqld服务并启动
	    cat > /usr/lib/systemd/system/mysqld.service << EOF
[Unit]
Description=MySQL Server
After=network.target
After=syslog.target

[Install]
WantedBy=multi-user.target

[Service]
User=mysql
Group=mysql
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf

#连接数限制
LimitNOFILE=65535
LimitNPROC=65535

#Restart配置可以在进程被kill掉之后,让systemctl产生新的进程,避免服务挂掉
#Restart=always
PrivateTmp=false
EOF

	    systemctl daemon-reload && systemctl enable mysqld && systemctl start mysqld && systemctl daemon-reload	
	    if [ $? -eq 0 ]
	    then
	        echo -e "\033[36m==========mysql安装成功并启动==========\033[0m"
	    fi	
	   
	    n=`grep "/usr/local/mysql/bin" /etc/profile |wc -l`
	
	    if [ $n -eq 0 ]
	    then
            echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile            source /etc/profile        else
            source /etc/profile	    fi
	    
	    mysql -uroot -D mysql -e "UPDATE user SET authentication_string=PASSWORD("123456789") WHERE user='root';"
	    mysql -uroot -e "FLUSH PRIVILEGES;"
	    mysql -uroot -p123456789 -e "grant all privileges on *.* to root@'%'  identified by '123456789';"
	
	    if [ $? -eq 0 ]
        then
           echo -e "\033[36m==========数据库root密码修改为123456789成功==========\033[0m"
        else
           echo -e "\033[31m**********数据库root密码修改为123456789失败,为空**********\033[0m"
        fi	}#(3)编译安装phpinstall_php(){
        cd /software
        
        PHPVERS=7.2.6       #PHP版本
        DLOAD_PHP=http://mirrors.sohu.com/php/php-$PHPVERS.tar.gz  #PHP下载地址

        #0 、创建php-fpm用户,用户名:php-fpm
        id php-fpm &> /dev/null        [ $? -ne 0 ] && useradd -r -s /sbin/nologin php-fpm        #1、下载php
        [ ! -f  php-$PHPVERS.tar.gz ] && echo -e "\033[36m正在下载php源码包...\033[0m"  && curl -O $DLOAD_PHP

        #2、解压php
        [ ! -d php-$PHPVERS/ ] && tar xf php-$PHPVERS.tar.gz        echo -e "\033[36m编译安装php需要很长时间,请慢慢等待...\033[0m"
        sleep 3        cd php-$PHPVERS/        #3、编译安装
        ./configure  --prefix=/usr/local/php7 \
        --with-config-file-path=/usr/local/php7/etc \
        --with-mysqli=mysqlnd  \
        --with-pdo-mysql=mysqlnd \
	    --with-mysql=/usr/local/mysql \
        --with-mysql-sock=/usr/local/mysql/tmp/mysql.sock \
        --with-iconv-dir \
        --with-freetype-dir \
        --with-jpeg-dir \
        --with-png-dir \
        --with-zlib \
        --with-bz2 \
        --with-libxml-dir \
        --with-curl \
        --with-gd \
        --with-openssl \
        --with-mhash  \
        --with-xmlrpc \
        --with-pdo-mysql \
        --with-libmbfl \
        --with-onig \
        --with-pear \
        --enable-xml \
        --enable-bcmath \
        --enable-shmop \
        --enable-sysvsem \
        --enable-inline-optimization \
        --enable-mbregex \
        --enable-fpm \
        --enable-mbstring \
        --enable-pcntl \
        --enable-sockets \
        --enable-zip \
        --enable-soap \
        --enable-opcache \
        --enable-pdo \
        --enable-mysqlnd-compression-support \
        --enable-maintainer-zts  \
        --enable-session \
        --with-fpm-user=php-fpm \
        --with-fpm-group=php-fpm  && make -j 2 && make -j 2 install

        if [ $? -eq 0 ]
        then
            echo -e "\033[36m==========php编译安装成功==========\033[0m"
        else
            echo -e "\033[31m**********php编译安装失败,请检查**********\033[0m"
            exit 1        fi

        #4、配置php-fpm服务文件
        [ ! -d /usr/local/php7/etc/ ] && mkdir /usr/local/php7/etc/
        \cp php.ini-production  /usr/local/php7/etc/php.ini        sed -i '/post_max_size/s/8/16/g;/max_execution_time/s/30/300/g;/max_input_time/s/60/300/g;s#\;date.timezone.*#date.timezone \= Asia/Shanghai#g' /usr/local/php7/etc/php.ini
        \cp sapi/fpm/init.d.php-fpm  /etc/init.d/php-fpm        chmod +x /etc/init.d/php-fpm        #5、将php-fpm添加到系统服务
        chkconfig --add php-fpm        chkconfig php-fpm on        #6、php-fpm配置文件
        cd /usr/local/php7/        cat > etc/php-fpm.conf << EOF
[global]
pid = /usr/local/php7/var/run/php-fpm.pid
error_log = /usr/local/php7/var/log/php-fpm.log
[www]
listen = 127.0.0.1:9000
listen.mode = 666
listen.owner = nobody
listen.group = nobody
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
EOF

        #7、编译ldap模块
        echo -e "\033[34m==========安装ldap模块==========\033[0m"
        cd /software/php-$PHPVERS/ext/ldap
        \cp -af /usr/lib64/libldap* /usr/lib/
        /usr/local/php7/bin/phpize        [ $? -eq 0 ] && ./configure --with-php-config=/usr/local/php7/bin/php-config && make && make install
        sed -i '/\;extension=bz2/aextension=ldap.so' /usr/local/php7/etc/php.ini        #8、编译gettext模块
        echo -e "\033[34m==========安装gettext模块==========\033[0m"
        cd /software/php-$PHPVERS/ext/gettext
        \cp -af /usr/lib64/libldap* /usr/lib/
        /usr/local/php7/bin/phpize        [ $? -eq 0 ] && ./configure --with-php-config=/usr/local/php7/bin/php-config && make && make install
        sed -i '/\;extension=bz2/aextension=gettext.so' /usr/local/php7/etc/php.ini	
	    echo -e "\033[36m==========PHP安装步骤完成==========\033[0m"}#(4)整合nginx和phpconfig_lnmp(){
        cd /usr/local/nginx        #1、编辑nginx配置文件
	    cat > conf/nginx.conf << EOF
user nobody nobody;	
worker_processes  1;
error_log /data/logs/nginx/error.log crit;
pid /run/nginx.pid;
worker_rlimit_nofile 51200;

events {
    use epoll;
    worker_connections  1024;
}

http {
    include       mime.types;
    log_format  main  '\$remote_addr - \$remote_user [\$time_local] "\$request" '
                      '\$status \$body_bytes_sent "\$http_referer" '
                      '"\$http_user_agent" "\$http_x_forwarded_for"';

    access_log  /data/logs/nginx/access.log  main;

    server_tokens       off;
    sendfile        	on;
    send_timeout        3m;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    client_header_timeout 3m;
    client_body_timeout 3m;
    connection_pool_size 256;
    client_header_buffer_size 1k;
    large_client_header_buffers 8 4k;
    request_pool_size 4k;
    output_buffers 4 32k;
    postpone_output 1460;
    client_max_body_size 10m;
    client_body_buffer_size 256k;
    client_body_temp_path /usr/local/nginx/client_body_temp;
    proxy_temp_path /usr/local/nginx/proxy_temp;
    fastcgi_temp_path /usr/local/nginx/fastcgi_temp;
    fastcgi_intercept_errors on;    

    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 8k;
    gzip_comp_level 5;
    gzip_http_version 1.1;
    gzip_types text/plain application/x-javascript text/css text/htm 
    application/xml;

    default_type  application/octet-stream;
    include  /usr/local/nginx/conf.d/*.conf;
}
EOF
        #2、将server配置段从nginx.conf分离出来
        [ ! -d conf.d ] && mkdir conf.d	
	
        #3、创建conf.d/server.conf文件整合nginx与php
        cat > conf.d/server.conf << EOF
server {
	listen       80;
	server_name  localhost;
	location / {
		root   /usr/local/nginx/html;
		index  index.php index.html index.htm;
	}
	
	error_page   500 502 503 504  /50x.html;
        location = /50x.html {
        	root   html;
        }	

	location ~ \.php$ {
	root   /usr/local/nginx/html;
	fastcgi_pass   127.0.0.1:9000;
	fastcgi_index  index.php;
	fastcgi_param  SCRIPT_FILENAME  \$document_root\$fastcgi_script_name;
	include        fastcgi_params;
	}
}
EOF

        #4、修改conf/fastcgi_params
        > conf/fastcgi_params        cat > conf/fastcgi_params << EOF
fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;
fastcgi_param  SERVER_SOFTWARE    nginx;
fastcgi_param  QUERY_STRING       \$query_string;
fastcgi_param  REQUEST_METHOD     \$request_method;
fastcgi_param  CONTENT_TYPE       \$content_type;
fastcgi_param  CONTENT_LENGTH     \$content_length;
fastcgi_param  SCRIPT_FILENAME    \$document_root\$fastcgi_script_name;
fastcgi_param  SCRIPT_NAME        \$fastcgi_script_name;
fastcgi_param  REQUEST_URI        \$request_uri;
fastcgi_param  DOCUMENT_URI       \$document_uri;
fastcgi_param  DOCUMENT_ROOT      \$document_root;
fastcgi_param  SERVER_PROTOCOL    \$server_protocol;
fastcgi_param  REMOTE_ADDR        \$remote_addr;
fastcgi_param  REMOTE_PORT        \$remote_port;
fastcgi_param  SERVER_ADDR        \$server_addr;
fastcgi_param  SERVER_PORT        \$server_port;
fastcgi_param  SERVER_NAME        \$server_name;
EOF

        #5、关闭SELinux、防火墙
        setenforce 0 && sed -i 's/enforcing/disabled/g' /etc/selinux/config
        systemctl stop firewalld && systemctl disable firewalld        #6、创建测试页,备份nginx默认的页面

        cat > html/1.php << EOF

EOF

        if [ $? -eq 0 ]
        then
            sleep 3            echo -e "\033[36m==========整合nginx和php成功==========\033[0m"
        else
            echo -e "\033[31m**********整合nginx和php失败,请检查**********\033[0m"
            # exit 1
        fi}#(5)启动nginx、mysql、php-fpm服务start_service(){
	    systemctl daemon-reload && systemctl start nginx 
       
	    if [ $? -eq 0 ]
            then
                echo -e "\033[36m==========nginx服务启动成功==========\033[0m"
        else
            echo -e "\033[31m**********nginx服务启动失败**********\033[0m"
        fi

        systemctl start mysqld  &&  /etc/init.d/php-fpm start        if [ $? -eq 0 ]
        then
            sleep 3            echo -e "\033[36m==========mysql、php-fpm服务启动成功==========\033[0m"
            echo -e "\033[33m查看端口启用情况:\033[0m"
            ss -tnl            echo -e "\033[33m端口:80、3306、9000已启动!\033[0m"
            echo -e "\033[36m==========编译安装lnmp已完成==========\033[0m"
            echo -e "\033[36m==========数据库root密码为123456789==========\033[0m"
            echo -e "\033[36m--------打开浏览器输入你的ip/1.php,看看测试页--------\033[0m"
        else
             echo -e "\033[31m**********mysql、php-fpm服务启动失败**********\033[0m"
        fi
        
        source /etc/profile}#脚本运行入口run_install(){
        while true;do
        menu        case $num in
        "0")
                #0、安装依赖包
                    echo -e "\033[34m==========安装依赖包==========\033[0m"
                    install_package                    ;;
        "1")
                #1、编译安装nginx
                    echo -e "\033[34m==========编译安装nginx==========\033[0m"
                    install_nginx                    ;;
        "2")
                #2、编译安装mysql
                    echo -e "\033[34m==========编译安装mysql==========\033[0m"
               	    install_mysql                    ;;
        "3")    #3、编译安装php
                    echo -e "\033[34m==========编译安装php==========\033[0m"
                    install_php                    ;;
        "4")    #4、整合nginx和php
                    echo -e "\033[34m==========整合nginx和php==========\033[0m"
               	    config_lnmp                    ;;
        "5")    #5、启动nginx、mysql、php-fpm服务
                    echo -e "\033[34m==========启动nginx、mysql、php-fpm服务==========\033[0m"
                    start_service                    ;;
        "6")    #6、一键编译安装lnmp
                    echo -e "\033[34m==========一键编译安装并配置lnmp==========\033[0m"
                    install_package
                    install_nginx
                    install_mysql
                    install_php
                    config_lnmp
                    start_service                    exit 0                    ;;
        "7")    #7、退出脚本
                    exit 0                    ;;
          *)
                    ;;
        esac        done}#调用脚本运行入口run_install

手动单独安装可以参考这里:https://blog.csdn.net/miss1181248983/article/details/80890649


原文地址:https://blog.51cto.com/u_10272167/2730519

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


本篇内容介绍了“LNMP服务器环境配置实例分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情...
本篇内容主要讲解“OneinStack如何一键安装LNMP”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“OneinStack如何...
小编给大家分享一下如何解决LNMP安装composer install时出现Warning: putenv()问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅...
1.源码安装mysql鉴于前边的文章已经详细说过mysql的源码安装可以点击基于LAMP的Discuz论坛的实现(源码安装)自行查看这里为了节省时间用一个shell脚本进行mysql的源码安装用到的mysql依然是5.6.46没有源码包的同学可以点击【mysql-5.6.46.tar.gz提取码:nli5】进行下载
Linux是非常热门的技术,也是当下非常受欢迎的操作系统,具有独特的优势所在,广受大家的喜欢和追捧,今天为大家分享一下几款常用的Linux系统面板,希望对你有所帮助。1、宝塔面板:是一款使用方便、功能强大而且终身免费的服务器管理软件,支持Linux以及Windows系统,一键配置LAMP/LNMP
██【電:131.乀.1418.乀.6667】【薇q:9788.乀.9181】██柬埔寨东方明珠开户目录LAMP1.安装Mariadb2.安装PHP3.测试php和apache的协同4.修改MariaDB数据库配置5.测试数据库连接LNMP(未完待续)LAMP1.安装Mariadb在RaspberryPi中,MySQL无法安装,会自动建议安装Maria
关闭防火墙安装依赖包上传源码包解压源码包,安装nginx启动nginx安装mysql和PHP相关服务修改nginx配置文件,nginx和PHP进行整合重新加载nginx服务启动php-fpm书写PHP测试页测试网页 
一.lnmp的搭建1.准备一台纯净版的虚拟机2.下载Lnmp一键安装包命令:wget http://soft.vpser.net/lnmp/lnmp1.5-full.tar.gz【安装完整版的-推荐1.5版本】也可以本地下载好,通过rz上传:http://soft.vpser.net/lnmp/lnmp1.5-full.tar.gz3.开始安装命令:cdlnmp1.5-full 
1.LNMP理论fastcgi的主要优点:把动态语言和http服务器分离开来,使nginx可以处理静态请求和向后转发动态请求,而php/php-fpm服务器转移解析PHP动态请求使用fastcgi的原因:Nginx不支持对外部动态程序的直接调用或者解析,所有的外部程序(包括PHP)必须通过FastCGI接口来调用。
keepalived高可用keepalived注意:任何软件都可以使用keepalived来做高可用keepalived如何实现高可用VRRP:虚拟路由冗余协议比如公司的网络是通过网关进行上网的,那么如果该路由器故障了,网关无法转发报文了,此时所有人都无法上网了,怎么办?通常做法是给路由器增加一台备节点,但是问
通过阿里云的服务器搭建lnmp架构以及部署wordpress个人博客,连接上域名所遇到的问题及解决办法注释:操作系统centos7.9第一步:购买阿里云ecs服务器,选择系统及其他硬件,下面是我自己购买的配置,可以参考(注意操作系统我购买的时候选错了,后来换成了centos7.9)然后在阿里云“云服
文章目录1.首先了解编译安装和yum安装的区别。2.yum安装准备工作---切换阿里云yum源3.编译安装lnmp**很不建议使用编译安装,麻烦且容易报错。**4.yum安装lnmp**可以先执行一下yumupdate**5.lnmp一键安装[参考网站](https://lnmp.org/)**不喜欢这种方式,所以没测试
电影院系统解压登录mysql创建电影院系统使用的数据库授权账户skyuc访问数据库讲系统部署到www.benet.com网站根目录下mv/usr/src/SKYUC.v3.4.2.SOURCE/wwwroot/*/var/www/benetcom/设置网站根目录所有者和权限客户机测试论坛系统部署解压复制文件到网站根目
下载:​ https://www.php.net/downloads​ https://www.php.net/distributions/php-8.0.6.tar.gz编译安装php:①安装依赖:yum-yinstalllibxml2-develsqlite-develbzip2-devellibcurl-devellibpng-devellibjpeg-develfreetype-devellibicu-develoniguruma-devellibxs
树莓派LNMP关键词:raspberrywebphpdnsmysq1LNMP、LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写,分别指Linux、Nginx/Apache、MySQL和PHP。这里演示如何在树莓派上搭建LNMP环境并配置多个站点。主要内容:树莓派安装nginx树莓派安装ph
官网:http://kodcloud.com/1、准备MySQL数据库 [root@cent8_yzl_20~]#yuminstall-ymysql-server[root@cent8_yzl_20~]#systemctlenable--nowmysqld[root@cent8_yzl_20~]#mysqlmysql>createdatabasekodbox;mysql>createuserkodbox@'10.0.0.
环境应用IP操作系统nginx192.168.122.131centos8mysql192.168.122.132centos8php192.168.122.133centos8准备工作//关闭防火墙#systemctldisable--nowfirewalld#setenforce0#vim/etc/selinux/configSELINUX=disabled安装nginx//安装依
1.购买vps或者外国云主机2.搭建ss服务端3.客户端配置服务端信息,即可。不废话,开始教程:ss-panel-v3简介ss-panel是一套功能齐全的shadowsocks用户管理面板,它可以实现用户注册、用户管理、流量控制、签到、添加多节点、充值购买、邀请返利等诸多功能,是目前网络上使用最广泛的一
LNMP架构数据迁移至NFS第一步:先将原有目录中数据移出数据存储到本地什么位置,获取方法1.通过网站页面右键点击,获取资源地址信息2.find命令利用-mmin53.利用inotify服务监控目录数据变化[root@web01wp-content]#cd/applicationginx/html/blog/wp-content/uploads[root@we
一 点睛业务上线之前最关键的一项任务便是环境部署,往往一个业务涉及多种应用环境,比如Web、DB、PROXY、CACHE等,本示例通过env.roledefs定义不同主机角色,再使用“@roles('webservers')”修饰符绑定到对应的任务函数,实现不同角色主机的部署差异。二 代码#coding=utf-8#!/usr