Ubuntu 18.04 システムでの Redis および phpredis 拡張機能のインストールと設定の詳細な説明

Ubuntu 18.04 システムでの Redis および phpredis 拡張機能のインストールと設定の詳細な説明

この記事では、Ubuntu 18.04 に Redis と phpredis 拡張機能をインストールして構成する方法について説明します。ご参考までに、詳細は以下の通りです。

1. インストール

インストール

$ sudo apt-getアップデート
$ sudo apt-get で redis-server をインストールします

起動する

$ sudo /etc/init.d/redis-serverを起動します

注意: 起動できない場合

systemctl ステータス redis-server.service
redis-server.service: PID ファイル /var/run/redis/redis-server を開けません
  1. Alibaba Cloud Server では、セキュリティ グループとセキュリティ ポリシーにサービス ポート番号を追加して、すべてのアドレスからのアクセスを許可することを忘れないでください。つまり、Alibaba Cloud Server 内のすべてのサービスでポートをマップする必要があります。この手順を実行しないと、上記の redis-cli コマンドは待機状態になります。
    ここに画像の説明を挿入
  2. ログ情報を表示
/var/log/redis/redis-server.log を cat します。
サーバー TCP リスニング ソケットを作成しています ::1:6379: バインド: 要求されたアドレスを割り当てることができません
  1. IPv6はホスト上で無効になっていますが、Ubuntuのredis-serverパッケージにはbind 127.0.0.1::1が付属しています。
  2. Redis 設定ファイル内のバインド アドレスを変更します。バインド アドレスをコメントアウトするか、バインド アドレスを 0.0.0.0 に変更します。
vim /etc/redis/redis.conf
127.0.0.1 ::1 をバインドします
  1. Redis サービスを開始します (設定ファイルを追加しないと設定が有効になりません)
sudo redis-server /etc/redis/redis.conf &
  1. サービスとポートを確認する
systemctl ステータス redis サーバー
netstat -ntpl | grep 6379
2. Redisが動作しているか確認する
$ redis-cli

このコマンドを実行すると、次の Redis プロンプトが開きます。

127.0.0.1:6379> 

pingと入力

127.0.0.1:6379> ピング
ポン

説明 インストール成功

3. リモートログインを設定する

デフォルトでは、redis はリモート ログインを許可しないため、設定する必要があります。
Redis設定ファイルを編集する

sudo vi /etc/redis/redis.conf

次の行をコメントアウトして検索することができます

#127.0.0.1 をバインドします

注: redis-cli -h (IP アドレス) -p (ポート番号のデフォルトは 6379) パラメータは、特定のコマンドからスペースで区切る必要があることに注意してください。

4. パスワードログインを設定する

設定ファイルの編集

sudo vi /etc/redis/redis.conf

次の行を見つけてコメントを削除します(requirepassを検索できます)

#変更前 #requirepass foobared
#変更後 requirepass 123456
5. Redisを再起動する
sudo サービス redis-server を再起動します

または強制終了してから手動で開くこともできます

sudo killall redis-server
sudo redis-server /etc/redis/redis.conf &

ここで設定ファイルを追加するのが最適です。そうしないと、設定が有効にならない可能性があります。

6. PHPのredis拡張機能をインストールする
  1. phpredis拡張ファイルをダウンロード
gitをインストール 
git クローン https://github.com/phpredis/phpredis.git
  1. phpredisフォルダを移動する
phpredis /etc/phpredis を実行します。
  1. インストール(実行に失敗した場合は、sudo apt-get install php7.2-dev を実行する必要があります(PHP のバージョンに応じて dev インストールを置き換えることができます))
cd /etc/phpredis
phpize
  1. 次の3つのコマンドを実行します
./configure
作る
インストールする
  1. php.ini ファイルを変更する
vim /etc/php/7.2/apache2/php.ini

php.iniファイルの末尾に以下のコマンドを追加します。

拡張子=redis.so
  1. apache2 restartコマンドを実行する
/etc/init.d/apache2 を再起動
  1. PHPにredis拡張機能がインストールされているかどうかを確認する
<?php
phpinfo();
?>

ここに画像の説明を挿入

この記事が Ubuntu 環境の設定に役立つことを願っています。

以下もご興味があるかもしれません:
  • docker に php-fpm サービス/拡張機能/構成をインストールする詳細なチュートリアル
  • Linux の PHP に XML 拡張機能をインストールする詳細な手順
  • PHP拡張機能のインストールが有効にならない問題を解決する
  • MacでのPHP環境と拡張機能の詳細なインストール
  • Mac pecl インストール php7.1 拡張機能チュートリアル
  • Linux で PHP curl 拡張機能をインストールする方法の詳細な説明
  • CentOS7にPHP7 Redis拡張機能をインストールする方法
  • PHP に memcache 拡張機能をインストールする方法
  • PHP に BCMath 拡張機能をインストールする方法
  • PHP拡張機能のインストール方法と手順の分析

<<:  MySQL 5.7 および 8.0 データベースのルート パスワードを忘れた場合の解決策

>>:  ラムダ式の原則と例

推薦する

MySQL REVOKE でユーザー権限を削除する

MySQL では、REVOKE ステートメントを使用してユーザーの特定の権限を削除できます (ユーザ...

mysql indexof関数の使用手順

以下のように表示されます。 LOCATE(部分文字列、文字列)文字列 str 内の部分文字列 sub...

Nexus を使用して Docker リポジトリを作成する方法

公式の Docker レジストリを使用して作成されたウェアハウスでは、イメージを削除してもデフォルト...

Nginx を使用して https ルートドメイン名への 301 リダイレクトを実装するためのサンプル コード

SEO とセキュリティを考慮して、301 リダイレクトが必要です。以下の一般的な処理には Nginx...

システムメンテナンスページにリダイレクトするように nginx を設定する

先週末、兄弟プロジェクトはより良いサービスを提供するためにサーバーを拡張する準備をしていました。兄弟...

Vue ページ印刷で自動ページングを実装する 2 つの方法

この記事では、ページ印刷の自動ページングを実現するためのVueの具体的なコードを例として紹介します。...

DockerとVMwareの競合を解決する

1. Dockerの起動の問題:問題は解決しました: Hyper-V をオンにする必要があります (...

CentOS 7.6 への MySQL 5.7 GA バージョンのインストール チュートリアル図

目次環境の準備環境の準備mariadbをアンインストールする rpm -qa | grep mari...

Vueは、選択した月に応じて日付に対応する曜日を動的に表示します。

私たち謙虚なプログラマーは、今でもこう歌わなければなりません。「あなたも私も、この世に生まれて、一日...

Vueデータ双方向バインディング実装方法

目次1. はじめに2. コードの実装2.1 目的分析2.2 実装プロセス2.2.1 エントリーコード...

Windows で負荷分散に Nginx+Tomcat を使用するための完全な手順

序文今日は、Prince が Windows で負荷分散に Nginx + Tomcat を使用する...

ユーザーエクスペリエンスの要素またはWebデザインの要素

システムとユーザー環境の設計<br />Apple システムの成功は、そのシステム アー...

Centos7でのパーティションのフォーマットとマウントの実装

Linux では、ハードディスクの追加やパーティションの再マウントといった状況に頻繁に遭遇します。こ...

Nginx の realip モジュールの使い方の基礎学習

序文nginx モジュールには、公式とサードパーティの 2 種類があります。nginx のインストー...

Centos7 で crontab + シェル スクリプトによる定期的な自動ファイル削除の問題を解決する

問題の説明:最近、rsyncで毎回同期するデータ量が多いが、データベースのbakファイルを保持する必...