

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 新使用者的安裝步驟
<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 伺服器 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 伺服器 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 叢集用戶端。

   ```
   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 叢集用戶端。

   ```
   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 叢集用戶端。

   ```
   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 許可，在 `/etc/php.d` 目錄中新增名為 `memcached.ini` 的新檔案，並在該檔案中插入 "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 許可，在 `/etc/php.d` 目錄中新增名為 `memcached.ini` 的新檔案，並在該檔案中插入 `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*` 目錄。驗證組建成品的絕對路徑，因為您在下一個步驟中需要它。

   如果上一個命令無法運作，您需要從下載的 `*.tgz` 檔案以手動方式解壓縮 PHP 用戶端成品 `amazon-elasticache-cluster-client.so`，並將其複製到 `/usr/lib/php5/20121212*` 目錄。

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

1. 使用 root/sudo 許可，在 `/etc/php5/cli/conf.d` 目錄中新增名為 `memcached.ini` 的新檔案，並在該檔案中插入 "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 許可，在 `/etc/php5/conf.d` 目錄中新增名為 `memcached.ini` 的新檔案，並在該檔案中插入 **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
```