ホームページ  >  記事  >  バックエンド開発  >  Homestead に php Redis 拡張機能をインストールし、発生した問題を解決する手順

Homestead に php Redis 拡張機能をインストールし、発生した問題を解決する手順

不言
不言転載
2018-10-09 15:16:273213ブラウズ

この記事の内容は、Homestead に php Redis 拡張機能をインストールする手順と、発生した問題の解決策に関するものです。一定の参考価値があります。必要な友人は参照できます。お役に立てれば幸いです。 。

最近、vagrant を使用して homestead をインストールした後、コードを実行すると、対応する Redis のクラスが存在しないというメッセージが表示されました。実際には、対応する PHP Redis 拡張機能がないことが原因でした。インストール プロセス中に発生する多くの落とし穴については、この記事に記録されています。内部

まず vagrant ssh を通じて homestead に入ります

PHP Redis 拡張機能

git clone https://github.com/phpredis/phpredis.git
cd phpredis                  
/usr/bin/phpize5.6  (不同php版本的情况phpize版本不同)
./configure --with-php-config=/usr/bin/php-config5.6 (这里边也需要根据情况指定 php-config 的版本,且和 phpize 的版本保持一致。)
make && make install

をダウンロードしてコンパイルします。{noteコンパイルが完了すると、redis PHP 拡張機能がモジュール ディレクトリに作成されます。そのファイル名は redis.so*

です。PHP の extension_dir を確認します。さまざまな方法があります。

1. 1 つは、以下に示すように、インストールの完了時に拡張機能のインストール ディレクトリを指定するよう求める方法です

Homestead に php Redis 拡張機能をインストールし、発生した問題を解決する手順

#2. コマンド php - を使用します。 i|grep extension_dir

redis.so 拡張モジュールを PHP 拡張ディレクトリに移動します

<code>sudo mv ./modules/redis.so /usr/lib/php/2013122<br/></code>

PHP 構成の ini ファイルを追加しますfile

<code>创建一个文件<br/>sudo touch /etc/php/5.6/fpm/conf.d/20-redis.ini<br/>使用vi编辑器写入如下内容:<br/>extension=redis.s<br/></code>

すべて問題ありません。php-fpm

<code>sudo service php5.6-fpm restart<br/></code>
を再起動します。Web ページで phpinfo() を再度使用すると、 Redis 拡張機能が表示され、新しい Redis() が利用できることがわかります。

主な落とし穴について話しましょう

phpize 関連のコマンドを実行すると、プロンプトが見つかりません。php5.6、php7.0、php7.1、および php7 があります。 2. 私が使用したものに基づいています この状況はphp5.6でのみ発生します。php-devをインストールする必要があります。sudo apt install php-devを使用すると、対応するパッケージが見つからないというメッセージが表示されます。apt search php-devを実行すると、見つかりません。 apt search php5.6 を使用する必要があります。-dev は、対応するパッケージのアドレスを取得できます (誤って apt search php5 を実行して、対応するパッケージ名が php5.6-dev であることがわかりました)。パッケージ名がわかった後、次のことができます。 sudo apt install を直接使用して、対応するパッケージをインストールします。

以上がHomestead に php Redis 拡張機能をインストールし、発生した問題を解決する手順の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。