

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 新用户安装步骤
<a name="Appendix.PHPAutoDiscoverySetup.Installing"></a>

**Topics**
+ [为新用户安装 PHP 7.x](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x)
+ [为新用户安装 PHP 5.x](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x)

## 为新用户安装 PHP 7.x
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x"></a>

**Topics**
+ [在 Ubuntu Server 14.04 LTS AMI（64 位和 32 位）上安装 PHP 7](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.Ubuntu)
+ [在 Amazon Linux 201609 AMI 上安装 PHP 7](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.AmznLinux)
+ [在 SUSE Linux AMI 上安装 PHP 7](#Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.SuseLinux)

### 在 Ubuntu Server 14.04 LTS AMI（64 位和 32 位）上安装 PHP 7
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.Ubuntu"></a>

1. 从 AMI 启动新实例。

1. 运行以下命令：

   ```
   sudo apt-get update
   sudo apt-get install gcc g++
   ```

1. 安装 PHP 7。

   ```
   sudo yum install php70
   ```

1. 下载 Amazon ElastiCache Cluster Client。

   ```
   wget https://elasticache-downloads.s3.amazonaws.com/ClusterClient/PHP-7.0/latest-64bit
   ```

1. 提取 `latest-64bit`。

   ```
   tar -zxvf latest-64bit
   ```

1. 在具有 Root 权限的情况下，将提取的工件文件 `amazon-elasticache-cluster-client.so` 复制到 `/usr/lib/php/20151012`。

   ```
   sudo mv artifact/amazon-elasticache-cluster-client.so /usr/lib/php/20151012
   ```

1. 将 `extension=amazon-elasticache-cluster-client.so` 行插入到文件 `/etc/php/7.0/cli/php.ini`。

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php/7.0/cli/php.ini
   ```

1. 启动或重启 Apache 服务器。

   ```
   sudo /etc/init.d/httpd start
   ```

 

### 在 Amazon Linux 201609 AMI 上安装 PHP 7
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.AmznLinux"></a>

1. 从 AMI 启动新实例。

1. 运行以下命令：

   ```
   sudo yum install gcc-c++
   ```

1. 安装 PHP 7。

   ```
   sudo yum install php70
   ```

1. 下载 Amazon ElastiCache Cluster Client。

   ```
   wget https://elasticache-downloads.s3.amazonaws.com/ClusterClient/PHP-7.0/latest-64bit
   ```

1. 提取 `latest-64bit`。

   ```
   tar -zxvf latest-64bit
   ```

1. 在具有 Root 权限的情况下，将提取的构件文件 `amazon-elasticache-cluster-client.so` 复制到 `/usr/lib64/php/7.0/modules/`。

   ```
   sudo mv artifact/amazon-elasticache-cluster-client.so /usr/lib64/php/7.0/modules/
   ```

1. 创建 `50-memcached.ini` 文件。

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php-7.0.d/50-memcached.ini
   ```

1. 启动或重启 Apache 服务器。

   ```
   sudo /etc/init.d/httpd start
   ```

 

### 在 SUSE Linux AMI 上安装 PHP 7
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP7x.SuseLinux"></a>

1. 从 AMI 启动新实例。

1. 运行以下命令：

   ```
   sudo zypper install gcc
   ```

1. 安装 PHP 7。

   ```
   sudo yum install php70
   ```

1. 下载 Amazon ElastiCache Cluster Client。

   ```
   wget https://elasticache-downloads.s3.amazonaws.com/ClusterClient/PHP-7.0/latest-64bit
   ```

1. 提取 `latest-64bit`。

   ```
   tar -zxvf latest-64bit
   ```

1. 在具有 Root 权限的情况下，将提取的构件文件 `amazon-elasticache-cluster-client.so` 复制到 `/usr/lib64/php7/extensions/`。

   ```
   sudo mv artifact/amazon-elasticache-cluster-client.so /usr/lib64/php7/extensions/
   ```

1. 将 `extension=amazon-elasticache-cluster-client.so` 行插入到文件 `/etc/php7/cli/php.ini`。

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php7/cli/php.ini
   ```

1. 启动或重启 Apache 服务器。

   ```
   sudo /etc/init.d/httpd start
   ```

 

## 为新用户安装 PHP 5.x
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x"></a>

**Topics**
+ [在 Amazon Linux AMI 2014.03（64 位和 32 位）上安装 PHP 5](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.AmznLinux)
+ [在 Red Hat Enterprise Linux 7.0 AMI（64 位和 32 位）上安装 PHP 5](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.RHEL)
+ [在 Ubuntu Server 14.04 LTS AMI（64 位和 32 位）上安装 PHP 5](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Ubuntu)
+ [为 SUSE Linux Enterprise Server 11 AMI（64 位或 32 位）安装 PHP 5](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.SuseLinux)
+ [其他 Linux 分配](#Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Other)

### 在 Amazon Linux AMI 2014.03（64 位和 32 位）上安装 PHP 5
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.AmznLinux"></a>

1. 启动一个 Amazon Linux 实例（64 位或 32 位），然后登录。

1. 安装 PHP 依赖项：

   ```
   sudo yum install gcc-c++ php php-pear
   ```

1. 下载适用于您的 Amazon EC2 实例和 PHP 版本的正确 `php-memcached` 软件包。有关更多信息，请参阅 [下载安装包](Appendix.PHPAutoDiscoverySetup.Downloading.md)。

1. 安装 `php-memcached`。URI 应为安装包的下载路径：

   ```
   sudo pecl install <package download path>
   ```

   这是一个关于 PHP 5.4、64 位 Linux 的示例安装命令。在这个示例中，使用实际版本号代替 *X.Y.Z*：

   ```
   sudo pecl install /home/AmazonElastiCacheClusterClient-X.Y.Z-PHP54-64bit.tgz
   ```
**注意**  
请务必使用最新版本的安装工件。

1. 在具有 Root/Sudo 权限的情况下，在 `memcached.ini` 目录中添加一个名为 `/etc/php.d` 的新文件，然后在该文件中插入“extension=amazon-elasticache-cluster-client.so”：

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php.d/memcached.ini
   ```

1. 启动或重启 Apache 服务器。

   ```
   sudo /etc/init.d/httpd start
   ```

 

### 在 Red Hat Enterprise Linux 7.0 AMI（64 位和 32 位）上安装 PHP 5
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.RHEL"></a>

1. 启动一个 Red Hat Enterprise Linux 实例（64 位或 32 位），然后登录。

1. 安装 PHP 依赖项：

   ```
   sudo yum install gcc-c++ php php-pear
   ```

1. 下载适用于您的 Amazon EC2 实例和 PHP 版本的正确 `php-memcached` 软件包。有关更多信息，请参阅 [下载安装包](Appendix.PHPAutoDiscoverySetup.Downloading.md)。

1. 安装 `php-memcached`。URI 应为安装包的下载路径：

   ```
   sudo pecl install <package download path>
   ```

1. 在具有 Root/Sudo 权限的情况下，在 `memcached.ini` 目录中添加一个名为 `/etc/php.d` 的新文件，然后在该文件中插入 `extension=amazon-elasticache-cluster-client.so`。

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php.d/memcached.ini
   ```

1. 启动或重启 Apache 服务器。

   ```
   sudo /etc/init.d/httpd start
   ```

 

### 在 Ubuntu Server 14.04 LTS AMI（64 位和 32 位）上安装 PHP 5
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Ubuntu"></a>

1. 启动一个 Ubuntu Linux 实例（64 位或 32 位），然后登录。

1. 安装 PHP 依赖项：

   ```
   sudo apt-get update 
   sudo apt-get install gcc g++ php5 php-pear
   ```

1. 下载适用于您的 Amazon EC2 实例和 PHP 版本的正确 `php-memcached` 软件包。有关更多信息，请参阅 [下载安装包](Appendix.PHPAutoDiscoverySetup.Downloading.md)。

1. 安装 `php-memcached`。URI 应为安装包的下载路径。

   ```
   sudo pecl install <package download path>
   ```
**注意**  
此安装步骤将构建工件 `amazon-elasticache-cluster-client.so` 安装到 `/usr/lib/php5/20121212*` 目录中。请核对构建工件的绝对路径，因为您在下一个步骤中需要使用此路径。

   如果上一个命令不起作用，则需要从下载的 `amazon-elasticache-cluster-client.so` 文件中手动提取 PHP 客户端工件 `*.tgz`，将它复制到 `/usr/lib/php5/20121212*` 目录。

   ```
   tar -xvf <package download path>
   cp amazon-elasticache-cluster-client.so /usr/lib/php5/20121212/
   ```

1. 在具有 Root/Sudo 权限的情况下，在 `memcached.ini` 目录中添加一个名为 `/etc/php5/cli/conf.d` 的新文件，然后在该文件中插入“extension=<amazon-elasticache-cluster-client.so 的绝对路径>”。

   ```
   echo "extension=<absolute path to amazon-elasticache-cluster-client.so>" | sudo tee --append /etc/php5/cli/conf.d/memcached.ini
   ```

1. 启动或重启 Apache 服务器。

   ```
   sudo /etc/init.d/httpd start
   ```

 

### 为 SUSE Linux Enterprise Server 11 AMI（64 位或 32 位）安装 PHP 5
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.SuseLinux"></a>

1. 启动一个 SUSE Linux 实例（64 位或 32 位），然后登录。

1. 安装 PHP 依赖项：

   ```
   sudo zypper install gcc php53-devel
   ```

1. 下载适用于您的 Amazon EC2 实例和 PHP 版本的正确 `php-memcached` 软件包。有关更多信息，请参阅 [下载安装包](Appendix.PHPAutoDiscoverySetup.Downloading.md)。

1. 安装 `php-memcached`。URI 应为安装包的下载路径。

   ```
   sudo pecl install <package download path>
   ```

1. 在具有 Root/Sudo 权限的情况下，在 `memcached.ini` 目录中添加一个名为 `/etc/php5/conf.d` 的新文件，然后在该文件中插入 **extension=`amazon-elasticache-cluster-client.so`**。

   ```
   echo "extension=amazon-elasticache-cluster-client.so" | sudo tee --append /etc/php5/conf.d/memcached.ini
   ```

1. 启动或重启 Apache 服务器。

   ```
   sudo /etc/init.d/httpd start
   ```

**注意**  
如果步骤 5 不适用于任何以前的平台，请验证 `amazon-elasticache-cluster-client.so` 的安装路径。另外，在扩展中指定二进制文件的完整路径。此外，请确认所用的 PHP 是受支持的版本。我们支持版本 5.3 到 5.5。

 

### 其他 Linux 分配
<a name="Appendix.PHPAutoDiscoverySetup.Installing.PHP5x.Other"></a>

在某些系统（特别是 CentOS7 和 Red Hat Enterprise Linux (RHEL) 7.1）上，`libsasl2.so.3` 已替代 `libsasl2.so.2`。在这些系统上，当您加载 ElastiCache 集群客户端时，它会尝试查找和加载 `libsasl2.so.2`，但此尝试将失败。要解决此问题，请创建一个指向 `libsasl2.so.3` 的符号链接，以便在客户端尝试加载 libsasl2.so.2 时将重定向到 `libsasl2.so.3`。以下代码将创建此符号链接。

```
cd /usr/lib64
sudo ln libsasl2.so.3 libsasl2.so.2
```