美文网首页
CentOS 编译安装 PHP 7 & Nginx & MySq

CentOS 编译安装 PHP 7 & Nginx & MySq

作者: Coder1024 | 来源:发表于2018-11-21 12:26 被阅读0次

    步骤参考了几篇文章,均已写了参考链接。

    PHP 7.1.1 Setup

    一、Yum源安装

    1. 安装epel-release

    rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm

    1. 安装PHP7的rpm源

    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

    1. 安装PHP7

    yum install php70w

    二、编译安装

    1. 下载PHP7.1.1

    wget -O php7.tar.gz http://cn2.php.net/get/php-7.1.1.tar.gz/from/this/mirror

    1. 解压php7

    tar -xvf php7.tar.gz

    1. 切换进入目录

    cd php-7.1.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 -y

    1. 编译配置(如果出现错误,基本都是上一步的依赖文件没有安装所致,百度错误信息后补上依赖项就行)
    ./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
    
    
    1. 正式安装

    make && make install

    1. 配置环境变量

    vi /etc/profile

    执行命令使得改动立即生效

    source /etc/profile

    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
    
    

    作者:anzhen0429 来源:CSDN 参考原文:https://blog.csdn.net/anzhen0429/article/details/79272893

    Nginx Setup

    1. Nginx 这个软件包已经包装在 EPEL 仓库里了,之前我们已经安装了这个仓库,所以可以直接使用包管理工具去安装 Nginx。

    yum install nginx -y

    1. 启动

    systemctl start nginx

    1. 开机自启动

    systemctl enable nginx


    参考原文:https://blog.csdn.net/xiao_xiao_meng/article/details/70053828?locationNum=12&fps=1

    MySQL Setup

    1. 首先增加MySQL7的源

    rpm -Uvh http://repo.mysql.com/mysql57-community-release-el7-7.noarch.rpm

    1. 安装MySQL

    yum install mysql-server mysql-devel mysql -y

    1. 启动

    systemctl start mysqld

    1. 设置自启动

    systemctl enable mysqld

    1. 查看初始化密码

    grep 'temporary password' /var/log/mysqld.log

    或者直接修改密码

    alter user user() identified by "123456";

    1. 设置远程可登录
    mysql -uroot -p
    use mysql;
    update user set host = '%' where user = 'root';
    FLUSH PRIVILEGES;
    
    
    1. 数据库恢复sql文件过大设置
    SHOW GLOBAL VARIABLES LIKE 'max_allowed_packet';
    SET GLOBAL max_allowed_packet=1024*1024*400;
    FLUSH PRIVILEGES;
    
    

    参考原文:https://blog.csdn.net/qq_35061546/article/details/79685751

    提高Nginx & Php-fpm权限

    1. 建立www用户及www用户组,将www用户同时加入www用户组和root组
    adduser www    #建立www用户
    groupadd www    #建立www用户组
    usermod -G www www    #将www用户加入www用户组同时从其他组移除
    usermod -a -G root www    #将www用户加入root用户组,有-a参数不从其他组移除,此时www同时属于www和root组
    
    
    1. 将nginx以www用户及www用户组运行,修改nginx.conf文件,在文件头部:
    user    www www;    #以www身份运行
    
    
    1. 将web目录的拥有者改为www:www,权限改为755
    chown www:www web目录 -R    #修改拥有者
    chmod 755 web目录 -R    #修改权限
    
    
    1. 重载nginx配置
    nginx -t    #测试
    nginx -s reload    #重载配置
    
    
    1. 打开php-fpm的www.conf配置文件并修改:
    vim /etc/php-fpm.d/www.conf
    #找到user和group改为:
    user = www
    group = www
    
    #listen也顺便修改了
    listen.owner = www
    listen.group = www
    
    

    作者:猫猫无心 来源:CSDN 原文:https://blog.csdn.net/qq_18358973/article/details/81475217 版权声明:本文为博主原创文章,转载请附上博文链接!

    相关文章

      网友评论

          本文标题:CentOS 编译安装 PHP 7 & Nginx & MySq

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