美文网首页
CentOS7下nginx+MySQL5.7+PHP7开发环境搭

CentOS7下nginx+MySQL5.7+PHP7开发环境搭

作者: sha_cq | 来源:发表于2017-10-27 10:28 被阅读52次

    在阿里云买了一服务器,用来做自己的测试和搭建博客,以及私有项目的版本仓库(github毕竟是任何人都可以下载的,不适合私有项目)。利用午休时间把这台服务器环境的搭建过程分享出来,希望可以帮到有需要的朋友。

    下面正式开始

    一、安装Nginx

    添加CentOS 7 Nginx yum资源库,打开终端,使用以下命令:

    rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
    

    然后输入 "yum list nginx" 查看可安装的nginx软件包.
    安装nginx

    yum -y install nginx    # 安装的nginx软件包
    nginx                   # 启动nginx
    curl 127.0.0.1          # 是否能访问到欢迎页面
    nginx -s stop           # 暂时关闭nginx服务
    

    开机启动Nginx

    systemctl enable nginx.service
    

    安装完成后,Nginx默认的目录信息如下:
    /usr/share/nginx/html # 网站文件存放默认目录
    /etc/nginx/conf.d/default.conf # 网站默认站点配置
    /etc/nginx/conf.d/ # 自定义Nginx站点配置文件存放目录
    /etc/nginx/nginx.conf # Nginx全局配置

    添加www用户组和用户:

    groupadd www
    useradd -d /home/wwwroot -g www -s /sbin/nologin www   #我把站点文件都放在/home/wwwroot下
    passwd www          # 设置www用户密码('www'),以后ftp登录用
    

    修改Nginx用户,编辑 /etc/nginx/nginx.conf ,修改如下配置:

    user www www;
    

    修改nginx目录所有者(非常重要):

    chown -R www:www /var/lib/nginx/
    

    修改默认站点目录:

    vi /etc/nginx/conf.d/default.conf
    

    移动默认站点:

    mv /usr/share/nginx/html /home/wwwroot/webs/default    # ftp不能上传到家目录,所以这里把站点都挂在子目录webs下
    chmod -R 755 /home/wwwroot/
    

    关闭防火墙(一般改用iptables防火墙,这里暂不讨论):

    systemctl disable firewalld  # 永久禁用
    nginx -c /etc/nginx/nginx.conf      # Nginx启动
    curl 127.0.0.1          # 看看是否任然能够访问,能访问则上面的配置正确
    

    二. 安装MySQL 5.7版本

    添加MySQL5.7到YUM源,并安装

    rpm -Uvh  http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
    yum repolist enabled | grep mysql   # 查看可用的安装版本
    yum -y install mysql-community-server    # 安装MySQL
    systemctl start mysqld.service              # 启动MySQL      
    systemctl enable mysqld.service     # 开机启动
    

    mysql安装完成之后,修改root用户密码:

    #修改 /etc/my.cnf,在 [mysqld] 小节下添加一行:
    skip-grant-tables=1         # 这一行配置让 mysqld 启动时不对密码进行验证
    #重启 mysqld 服务:
    systemctl restart mysqld
    #使用 root 用户登录到 mysql:
    mysql -u root 
    #切换到mysql数据库,更新 user 表:
    use mysql;
    #在之前的版本中,密码字段的字段名是 password,5.7版本改为了 authentication_string
    update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
    FLUSH PRIVILEGES;
    #退出 mysql,编辑 /etc/my.cnf 文件,删除 skip-grant-tables=1 的内容
    #重启 mysqld 服务,再用新密码root登录即可
    

    配置默认编码为utf8

    #修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:
    [mysqld]
    character_set_server=utf8
    init_connect='SET NAMES utf8'
    

    重新启动mysql服务使配置生效:

    systemctl restart mysqld
    

    默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,添加一个新的帐户:

    mysql> GRANT ALL PRIVILEGES ON *.* TO 'apelogs'@'%' IDENTIFIED BY 'ApeLogs20170214' WITH GRANT OPTION;
    mysql> FLUSH PRIVILEGES;
    

    三. 安装PHP7

    rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm       # 安装epel-release
    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm                     # 安装PHP7的rpm源
    

    执行命令安装php7:

    yum install -y php70w php70w-cli php70w-common php70w-gd php70w-xml php70w-ldap php70w-mbstring php70w-mcrypt php70w-mysql php70w-pdo php70w-devel
    

    安装php-fpm:

    yum install php70w-fpm php70w-opcache
    

    设置用户和组:

    vi /etc/php-fpm.d/www.conf
        user=www  
        group=www
    

    开机启动:

    systemctl enable php-fpm.service
    

    启动php-fpm:

    systemctl start php-fpm
    

    修改 /etc/nginx/conf.d/default.conf 文件,找到下面这段并改为如下所示:

        location ~ \.php$ {
            root           /home/wwwroot/webs/default;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    

    重启nginx:

    nginx -s reload
    

    查看PHPinfo

    vi /home/wwwroot/webs/default/index.php
    <?
    phpinfo();
    ?>
    chown -R www:www /home/wwwroot
    

    浏览器访问 http://IP/index.php 成功则环境已搭建好.

    相关文章

      网友评论

          本文标题:CentOS7下nginx+MySQL5.7+PHP7开发环境搭

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