美文网首页
centos7下搭建lnmp环境(php7+MariaDb)

centos7下搭建lnmp环境(php7+MariaDb)

作者: Cesc90 | 来源:发表于2017-02-09 09:18 被阅读0次
    1. 安装atomic yum源
    $ wget http://www.atomicorp.com/installers/atomic #下载
    $ sh ./atomic #安装
    $ yum update
    
    1. 安装nginx
    $ yum install -y nginx #安装
    $ systemctl start nginx #启动
    $ systemctl enable nginx #开机自启
    
    1. 设置防火墙
    $ firewall-cmd --zone=public --add-port=80/tcp --permanent #让防火墙放通tcp的 80端口
    $ firewall-cmd --reload #重启防火墙以让更改生效
    $ firewall-cmd --list-all #确认防火墙配置是否成功
    
    1. 测试Nginx是否安装成功:
      访问http://你的ip/ ,如果成功安装会出来nginx默认的欢迎界面
    2. 安装Mariadb
    $ yum install -y mariadb-server #安装
    $ systemctl start mariadb #启动mariadb
    $ mysql_secure_installation #运行向导配置mariadb,这里会提示是否设置root密码,直接回车然后输入Y设置root密码,两次输入密码(务必要记住)。接下来的询问全部输入Y。
    $ systemctl enable mariadb #设置mariadb开机启动
    
    1. 编译安装php7.1.1
    $ wget http://hk1.php.net/get/php-7.1.1.tar.gz/from/this/mirror #下载
    $ tar -zxvf mirror
    $ cd php-7.1.1
    $ yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel gcc gcc+ #安装需要的包
    $ ./configure \
    --prefix=/usr/local/php \
    --with-config-file-path=/etc \
    --enable-fpm \
    --with-fpm-user=nginx  \
    --with-fpm-group=nginx \
    --enable-inline-optimization \
    --disable-debug \
    --disable-rpath \
    --enable-shared  \
    --enable-soap \
    --with-libxml-dir \
    --with-xmlrpc \
    --with-openssl \
    --with-mcrypt \
    --with-mhash \
    --with-pcre-regex \
    --with-sqlite3 \
    --with-zlib \
    --enable-bcmath \
    --with-iconv \
    --with-bz2 \
    --enable-calendar \
    --with-curl \
    --with-cdb \
    --enable-dom \
    --enable-exif \
    --enable-fileinfo \
    --enable-filter \
    --with-pcre-dir \
    --enable-ftp \
    --with-gd \
    --with-openssl-dir \
    --with-jpeg-dir \
    --with-png-dir \
    --with-zlib-dir  \
    --with-freetype-dir \
    --enable-gd-native-ttf \
    --enable-gd-jis-conv \
    --with-gettext \
    --with-gmp \
    --with-mhash \
    --enable-json \
    --enable-mbstring \
    --enable-mbregex \
    --enable-mbregex-backtrack \
    --with-libmbfl \
    --with-onig \
    --enable-pdo \
    --with-mysqli=mysqlnd \
    --with-pdo-mysql=mysqlnd \
    --with-zlib-dir \
    --with-pdo-sqlite \
    --with-readline \
    --enable-session \
    --enable-shmop \
    --enable-simplexml \
    --enable-sockets  \
    --enable-sysvmsg \
    --enable-sysvsem \
    --enable-sysvshm \
    --enable-wddx \
    --with-libxml-dir \
    --with-xsl \
    --enable-zip \
    --enable-mysqlnd-compression-support \
    --with-pear \
    --enable-opcache #编译
    $ make && make install #编译与安装(这里要make好久,要耐心一下)
    $ vim /etc/profile #添加 PHP 命令到环境变量,在末尾加入
    PATH=$PATH:/usr/local/php/bin
    export PATH
    然后
    $ source /etc/profile #使改动立即生效执行
    $ echo $PATH #查看环境变量
    $ php -v 查看php版本
    
    1. 配置php-fpm
    $ cp php.ini-production /etc/php.ini
    $ cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
    $ cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
    $ cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
    $ chmod +x /etc/init.d/php-fpm
    $ /etc/init.d/php-fpm start #启动php-fpm
    
    1. 配置nginx虚拟机
    $ vim /etc/nginx/conf.d/imcesc.com.conf
    

    把以下内容复制到imcesc.com.conf

    server{
        listen 80;
        server_name  imcesc.com #此处改成你的ip或者域名;
        root /var/www/html/imcesc.com; # 该项要修改为你准备存放相关网页的路径
        location / {
            index  index.php index.html index.htm;
             #如果请求既不是一个文件,也不是一个目录,则执行一下重写规则
             if (!-e $request_filename)
             {
                #地址作为将参数rewrite到index.php上。
                rewrite ^/(.*)$ /index.php/$1;
                #若是子目录则使用下面这句,将subdir改成目录名称即可。
                #rewrite ^/subdir/(.*)$ /subdir/index.php/$1;
             }
        }
        #proxy the php scripts to php-fpm
        location ~ \.php {
                include fastcgi_params;
                ##pathinfo支持start
                #定义变量 $path_info ,用于存放pathinfo信息
                set $path_info "";
                #定义变量 $real_script_name,用于存放真实地址
                set $real_script_name $fastcgi_script_name;
                #如果地址与引号内的正则表达式匹配
                if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") {
                        #将文件地址赋值给变量 $real_script_name
                        set $real_script_name $1;
                        #将文件地址后的参数赋值给变量 $path_info
                        set $path_info $2;
                }
                #配置fastcgi的一些参数
                fastcgi_param SCRIPT_FILENAME $document_root$real_script_name;
                fastcgi_param SCRIPT_NAME $real_script_name;
                fastcgi_param PATH_INFO $path_info;
                ###pathinfo支持end
            fastcgi_intercept_errors on;
            fastcgi_pass   127.0.0.1:9000;
        }
        
        location ^~ /data/runtime {
        return 404;
        }
        
        location ^~ /application {
        return 404;
        }
        
        location ^~ /simplewind {
        return 404;
        }
    }
    

    重启nginx

    $ systemctl restart nginx
    
    1. 测试
    $ vim /var/www/html/imcesc.com/index.php
    

    把下面的代码复制到这个文件 里

    <?php
    phpinfo();
    

    保存退出,然后查看访问http://imcesc.com (此处为你绑定的域名或IP)

    相关文章

      网友评论

          本文标题:centos7下搭建lnmp环境(php7+MariaDb)

          本文链接:https://www.haomeiwen.com/subject/ccciittx.html