设置 CentOS
CentOS 是 Red Hat Enterprise Linux(RHEL)的一个分支,代表社区企业操作系统。它是服务器上广泛使用的操作系统,专门用于托管公司提供共享托管服务。
首先,让我们为开发环境配置 CentOS。执行以下步骤:
安装 NGINX
-
首先,我们需要在 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。
-
现在,发出以下命令来查看可以安装哪些版本的 NGINX:
sudo yum --showduplicates list Nginx
这将向您展示最新的稳定版本。在我们的例子中,它显示 NGINX 1.8.0 和 NGINX 1.8.1。
-
现在,让我们使用以下命令安装 NGINX:
sudo yum install Nginx
这将安装 NGINX。
-
在 CentOS 上,NGINX 不会在安装或重启后自动启动。因此,我们首先要使用以下命令让 NGINX 在系统重启后自动启动:
systemctl enable Nginx.service
-
现在,让我们通过发出以下命令来启动 NGINX:
systemctl start Nginx.service
-
然后,打开浏览器,输入 CentOS 服务器的 IP 或主机名。如果你看到的欢迎界面与本章前面的 Debian 欢迎界面相同,那么 NGINX 就安装成功了。
要检查 NGINX 的安装版本,请在终端中执行以下命令:
Nginx –v
在我们的服务器上安装的 NGINX 版本是 1.8.1。
现在,我们的 web 服务器已经准备就绪。
安装 PHP 7
-
下一步是安装 PHP 7 FPM,并配置 NGINX 和 PHP 7 一起工作。在编写本书时,PHP 7 还没有打包到 CentOS 官方软件仓库中。因此,我们有两个选择来安装 PHP 7:要么从源代码构建,要么使用第三方软件源。从源代码构建有点困难,所以我们还是选择简单的方法,使用第三方软件源。
在本书中,我们将使用 webtatic 仓库安装 PHP 7,因为它们提供了新版本的快速更新。还有更多的版本库,只要能用,读者可以选择使用任何版本库。
-
现在,让我们通过发出以下命令将 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
-
成功添加存储库后,发出以下命令查看可安装的版本:
sudo yum –showduplicates list php70w
在我们的示例中,可以安装 PHP 7.0.3。
-
现在,发出以下命令来安装 PHP 7 以及可能需要的一些模块:
sudo yum install php70w php70w-common php70w-cli php70w-fpm php70w-mysql php70w-opcache php70w-mcrypt
-
这将安装核心 PHP 7 和一些 PHP 7 可用的模块。如果需要其他模块,也可以很容易地安装,但首先要搜索一下是否可用。在终端中发出以下命令,查看 PHP 7 的所有可用模块:
sudo yum search php70w-
我们将看到 PHP 7 的所有可用模块的长列表。
-
现在,假设我们要安装 PHP 7 gd 模块;发出以下命令:
sudo yum install php70w-gd
这将安装 gd 模块。可以使用同一命令安装多个模块,每个模块之间用空格隔开,就像我们在初次安装 PHP 时所做的那样。
现在,要检查已安装的 PHP 版本,请执行以下命令:
php –v
在我们的例子中,安装了 PHP 7.0.3。
-
要启动、停止和重新启动 PHP,请在终端中发出以下命令:
sudo systemctl start php-fpm sudo systemctl restart php-fpm sudo systemctl stop php-fpm
-
现在,让我们配置 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 中提到的任何文件无关。 -
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 相同。 -
现在,为了测试我们的安装,我们将创建一个名为
info.php
的文件,其中包含以下内容:<?php phpinfo(); ?>
保存文件后,输入 http://server_ip/info.php 或 http://hostname/info.php ,我们将得到一个包含 PHP 完整信息的页面。如果您看到此页面,恭喜您!PHP 与 NGINX 一起运行。
安装 Percona Server
-
现在,我们将在 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
软件仓库安装完成后,会显示一条说明安装完成的信息。
-
现在,要测试软件仓库,请执行以下命令,它会列出所有可用的 Percona 软件包:
sudo yum search percona
-
要安装 Percona Server 5.5,请在终端中发出以下命令:
sudo yum install Percona-Server-server-55
安装过程将开始。其余过程与 Debian/Ubuntu 相同。
-
安装完成后,我们会看到一条完成消息。