设置 CentOS

CentOS 是 Red Hat Enterprise Linux(RHEL)的一个分支,代表社区企业操作系统。它是服务器上广泛使用的操作系统,专门用于托管公司提供共享托管服务。

首先,让我们为开发环境配置 CentOS。执行以下步骤:

安装 NGINX

  1. 首先,我们需要在 CentOS 安装中添加 NGINX RPM,因为 CentOS 没有为 NGINX 提供任何默认仓库。在终端中发出以下命令:

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

    这会将 NGINX 存储库添加到 CentOS。

  2. 现在,发出以下命令来查看可以安装哪些版本的 NGINX:

    sudo yum --showduplicates list Nginx

    这将向您展示最新的稳定版本。在我们的例子中,它显示 NGINX 1.8.0 和 NGINX 1.8.1。

  3. 现在,让我们使用以下命令安装 NGINX:

    sudo yum install Nginx

    这将安装 NGINX。

  4. 在 CentOS 上,NGINX 不会在安装或重启后自动启动。因此,我们首先要使用以下命令让 NGINX 在系统重启后自动启动:

    systemctl enable Nginx.service
  5. 现在,让我们通过发出以下命令来启动 NGINX:

    systemctl start Nginx.service
  6. 然后,打开浏览器,输入 CentOS 服务器的 IP 或主机名。如果你看到的欢迎界面与本章前面的 Debian 欢迎界面相同,那么 NGINX 就安装成功了。

    要检查 NGINX 的安装版本,请在终端中执行以下命令:

    Nginx –v

    在我们的服务器上安装的 NGINX 版本是 1.8.1。

    现在,我们的 web 服务器已经准备就绪。

安装 PHP 7

  1. 下一步是安装 PHP 7 FPM,并配置 NGINX 和 PHP 7 一起工作。在编写本书时,PHP 7 还没有打包到 CentOS 官方软件仓库中。因此,我们有两个选择来安装 PHP 7:要么从源代码构建,要么使用第三方软件源。从源代码构建有点困难,所以我们还是选择简单的方法,使用第三方软件源。

    在本书中,我们将使用 webtatic 仓库安装 PHP 7,因为它们提供了新版本的快速更新。还有更多的版本库,只要能用,读者可以选择使用任何版本库。

  2. 现在,让我们通过发出以下命令将 webtatic 存储库添加到 CentOS 存储库:

    rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-releaselatest-7.noarch.rpm
    rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
  3. 成功添加存储库后,发出以下命令查看可安装的版本:

    sudo yum –showduplicates list php70w

    在我们的示例中,可以安装 PHP 7.0.3。

  4. 现在,发出以下命令来安装 PHP 7 以及可能需要的一些模块:

    sudo yum install php70w php70w-common php70w-cli php70w-fpm php70w-mysql php70w-opcache php70w-mcrypt
  5. 这将安装核心 PHP 7 和一些 PHP 7 可用的模块。如果需要其他模块,也可以很容易地安装,但首先要搜索一下是否可用。在终端中发出以下命令,查看 PHP 7 的所有可用模块:

    sudo yum search php70w-

    我们将看到 PHP 7 的所有可用模块的长列表。

  6. 现在,假设我们要安装 PHP 7 gd 模块;发出以下命令:

    sudo yum install php70w-gd

    这将安装 gd 模块。可以使用同一命令安装多个模块,每个模块之间用空格隔开,就像我们在初次安装 PHP 时所做的那样。

    现在,要检查已安装的 PHP 版本,请执行以下命令:

    php –v

    在我们的例子中,安装了 PHP 7.0.3。

  7. 要启动、停止和重新启动 PHP,请在终端中发出以下命令:

    sudo systemctl start php-fpm
    sudo systemctl restart php-fpm
    sudo systemctl stop php-fpm
  8. 现在,让我们配置 NGINX 以使用 PHP FPM。使用 vi、nano 或您选择的任何其他编辑器打开位于 /etc/Nginx/conf.d/default.conf 的默认 NGINX 虚拟主机文件。现在,确保在服务器块中设置了两个选项,如下所示:

    server {
        listen 80;
        server_name localhost;
        root /usr/share/nginx/html;
        index index.php index.html index.htm;

    root 选项表示放置网站源代码文件的网络文档根目录。索引表示将加载的默认文件和扩展名。如果找到这些文件中的任何一个,它们将被默认执行,与 URL 中提到的任何文件无关。

  9. NGINX 中的下一个配置是 PHP 的位置块。以下是 PHP 的配置:

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME
        $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

    前面的代码块是最重要的配置,因为它能让 NGINX 与 PHP 通信。fastcgi_pass 127.0.0.1:9000 这一行告诉 NGINX,PHP FPM 可以通过端口 9000 访问 127.0.0.1 回环 IP。其余细节与我们讨论过的 Debian 和 Ubuntu 相同。

  10. 现在,为了测试我们的安装,我们将创建一个名为 info.php 的文件,其中包含以下内容:

    <?php
        phpinfo();
    ?>

    保存文件后,输入 http://server_ip/info.phphttp://hostname/info.php ,我们将得到一个包含 PHP 完整信息的页面。如果您看到此页面,恭喜您!PHP 与 NGINX 一起运行。

安装 Percona Server

  1. 现在,我们将在 CentOS 上安装 Percona Server。安装过程是一样的,只是它有一个单独的软件源。要将 Percona Server 软件仓库添加到 CentOS,请在终端执行以下命令:

    sudo yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm

    软件仓库安装完成后,会显示一条说明安装完成的信息。

  2. 现在,要测试软件仓库,请执行以下命令,它会列出所有可用的 Percona 软件包:

    sudo yum search percona
  3. 要安装 Percona Server 5.5,请在终端中发出以下命令:

    sudo yum install Percona-Server-server-55

    安装过程将开始。其余过程与 Debian/Ubuntu 相同。

  4. 安装完成后,我们会看到一条完成消息。