收藏NoSQL数据库

LNP+Redis部署网站

2023-03-06  本文已影响0人  技术老男孩

一、环境准备:

角色 Ip地址 主机名
Redis数据库服务器 192.168.88.51 Host51
客户端 192.168.88.50 Host50

二、配置思路:

  1. 搭建LNP环境
  2. 搭建Redis数据库服务器
  3. 安装redis-cluster让php支持Redis数据库
    补充:默认PHP不支持redis (也就是不能连接redis服务)
  4. 测试

三、实操:

第一步:搭建LNP环境

[root@host50~]# yum -y install gcc pcre-devel  zlib-devel
[root@host50~]# tar -xf nginx-1.12.2.tar.gz 
[root@host50~]# cd nginx-1.12.2/
[root@host50~]#./configure 
[root@host50~]# make 
[root@host50~]# make install
[root@host50 nginx-1.12.2]# ls /usr/local/nginx/
conf  html  logs  sbin
[root@host50 ~]# yum -y install php php-fpm php-devel
[root@host50 ~]# vim +65 /usr/local/nginx/conf/nginx.conf
       location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            include        fastcgi.conf;
        }  
# 检查修改
[root@host50 ~]# /usr/local/nginx/sbin/nginx  -t 
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
# 如果有httpd服务的话要停止        
[root@host50 ~]# systemctl stop httpd   
[root@host50 ~]# systemctl disable httpd
Removedsymlink /etc/systemd/system/multi-user.target.wants/httpd.service.
# 启动Nginx服务
[root@host50 ~]# /usr/local/nginx/sbin/nginx
[root@host50 ~]# netstat  -utnalp | grep  80
tcp        0      0 0.0.0.0:80    0.0.0.0:*       LISTEN      9853/nginx: master  

# 启动php-fpm服务
[root@host50 ~]# systemctl  start php-fpm  
[root@host50 ~]# systemctl  enable php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to /usr/lib/systemd/system/php-fpm.service.
[root@host50 ~]# netstat  -utnalp | grep  9000 
tcp        0      0 127.0.0.1:9000   0.0.0.0:*  LISTEN      9863/php-fpm: maste 
[root@host50 ~]# vim  /usr/local/nginx/html/test.php  
<?php
$i=99;
echo $i;
?>
[root@host50 ~]# curl  http://localhost/test.php  
99

第二步:搭建Redis数据库服务器

第三步:安装redis-cluster让php支持Redis数据库

[root@host50~]#tar -xf redis-cluster-4.3.0.tgz 
[root@host50~]#cd redis-4.3.0/

# 创建配置命令configure 和生产PHP配置信息文件/usr/bin/php-config 
[root@host50 redis-4.3.0]# phpize  
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525

# 配置
[root@host50redis-4.3.0]# ./configure  --with-php-config=/usr/bin/php-config  
[root@host50 redis-4.3.0]# make  编译
[root@host50 redis-4.3.0]# make install 安装  

# 提示模块的安装目录
Installing shared extensions: /usr/lib64/php/modules/   

# 查看目录下的模块列表 有redis.so 模块文件即可
[root@host50 redis-4.3.0]# ls /usr/lib64/php/modules/  
curl.so      json.so    mysql.so      pdo.so         phar.so   sqlite3.so
fileinfo.so  mysqli.so  pdo_mysql.so  pdo_sqlite.so  redis.so  zip.so

[root@host50 redis-4.3.0]# vim /etc/php.ini
 728 extension_dir = "/usr/lib64/php/modules/"  # 模块文件所在的目录
 730 extension = "redis.so" # 模块名 

# 重启服务生效配置      
[root@host50 redis-4.3.0]# systemctl  restart php-fpm

#查看支持的模块
[root@host50 ~]# php -m  | grep -i  redis 
redis

第四步:测试配置

# 在网站服务器编写PHP脚本 存储数据 和查询数据
[root@host50 ~]# vim /usr/local/nginx/html/set.php                      
<?php
$redis = new redis(); 定义连接命令
$redis->connect("192.168.88.51",6351); 指定服务器的ip和端口
$redis->auth("123456"); 指定连接密码
$redis->set("redistest","666666"); 存储数据
echo "save ok";
?>

# 编写查询数据的脚本 get.php
[root@host50 ~]# vim /usr/local/nginx/html/get.php                      
<?php
$redis = new redis(); 定义连接命令
$redis->connect("192.168.88.51",6351); 指定服务器的ip和端口
$redis->auth("123456"); 指定连接密码
echo  $redis->get("redistest"); 输出查询结果
?>
[root@host50 ~]# curl http://localhost/set.php   #访问存储数据的脚本
save ok

[root@host50 ~]# curl http://localhost/get.php  #访问查询数据的脚本
666666

# 在Redis服务器本机查看内存里的数据,能够看到PHP存储的数据为成功
[root@host51 ~]# redis-cli  -h 192.168.88.51 -p 6351 -a 123456
192.168.88.51:6351> keys  redistest
1) "redistest"
192.168.88.51:6351> get redistest
"666666"
192.168.88.51:6351> exit
上一篇 下一篇

猜你喜欢

热点阅读