怎样在 Go、NodeJS、PHP、Python 和 redis-cli 中使用 TLS/SSL 安全连接到 Redis

介绍

Vultr 的托管 Redis 数据库需要您的源代码或 CLI 中的 TLS/SSL 连接。 本文包含演示怎样使用 TLS/SSL 安全连接的代码示例 redis-cli 和流行的编程语言。

怎样找到您的 TLS/SSL 连接 URL

要找到您的 Redis 连接 URL,请导航到托管 Redis 数据库的概述部分,然后单击 复制 Redis 网址,将它放在剪贴板上。

  • URL 由用户名、密码、主机和端口值组合而成。

  • 本文所有代码均使用此 example URL,您应该将其替换为您的真实网址:

    rediss://USERNAME:[email protected]_HOST:PORT_NUMBER
    

重要的: 注意双 ss 在协议中, rediss://,这表明连接使用了 TLS/SSL 加密。

与围棋联系

首先,得到 go-redis/redis 图书馆。

$ go get github.com/go-redis/redis/v8

接下来,打开一个名为 main.go 并粘贴以下内容。 更换 example 使用您的 Redis URL。

package main



import (

    "context"

    "fmt"



    "github.com/go-redis/redis/v8"

)



var ctx = context.Background()



func main() {

    redisURL := "rediss://USERNAME:[email protected]_HOST:PORT_NUMBER"



    addr, err := redis.ParseURL(redisURL)

    if err != nil {

        panic(err)

    }



    rdb := redis.NewClient(addr)



    err = rdb.Set(ctx, "key", "Hello Vultr!", 0).Err()

    if err != nil {

        panic(err)

    }



    val, err := rdb.Get(ctx, "key").Result()

    if err != nil {

        panic(err)

    }

    fmt.Println("Value is:", val)

}

这将创建一个名为 key,价值 Hello Vultr!. 然后,它检索密钥并打印其值。

运行这个 example:

$ go run main.go

与 Node.js 连接

首先,安装 ioredis 图书馆。

$ npm install --save ioredis

接下来,打开一个名为 index.php 并粘贴以下内容。 更换 example 使用您的 Redis URL。

const Redis = require("ioredis");

const redisUrl = "rediss://USERNAME:[email protected]_HOST:PORT_NUMBER"

const redis = new Redis(redisUrl);



redis.set("key", "Hello Vultr!");



redis.get("key").then(function (result) {

    console.log(`Value is: ${result}`);

    redis.disconnect();

});

这将创建一个名为 key,价值 Hello Vultr!. 然后,它检索密钥并打印其值。

运行这个 example:

$ node index.js

连接 PHP

首先,安装 predis 图书馆。

$ composer require predis/predis

接下来,打开一个名为 index.php 并粘贴以下内容。 更换 example 使用您的 Redis URL。

<?php



require 'vendor/autoload.php';

PredisAutoloader::register();



$redis_url="rediss://USERNAME:[email protected]_HOST:PORT_NUMBER";



$client = new PredisClient($redis_url);



$client->set('key', 'Hello Vultr!');

$value = $client->get('key');



echo "Value is: {$value}";

这将创建一个名为 key,价值 Hello Vultr!. 然后,它检索密钥并打印其值。

运行这个 example:

$ php index.php

与 Python 连接

首先,安装 redis-py 库。

$ pip install redis

接下来,打开一个名为 main.py 并粘贴以下内容。 更换 example 使用您的 Redis URL。

import redis



def main():

    redis_url="rediss://USERNAME:[email protected]_HOST:PORT_NUMBER"

    redis_client = redis.from_url(redis_url)



    redis_client.set('key', 'Hello Vultr!')

    key = redis_client.get('key').decode('utf-8')



    print('Value is:', key)



if __name__ == '__main__':

    main()

这将创建一个名为 key,价值 Hello Vultr!. 然后,它检索密钥并打印其值。

运行这个 example:

$ python main.py

与连接 redis-cli

首先,你需要有 redis-cli 安装。

  • 选项 1:安装 redis-cli 作为的一部分 Redis 包 为您的操作系统。

  • 选项 2:安装 NodeJS 独立版本redis-cli.

接下来,从终端窗口执行以下命令。 更换 example 使用您的 Redis URL。

$ redis-cli -u rediss://USERNAME:[email protected]_HOST:PORT_NUMBER

要检查连接,请运行 INFO 命令,它返回所有 Redis 参数。

INFO

更多信息

这些只是可用于支持 TLS/SSL 的 Redis 的少数语言和客户端。 你会发现更多 官方文档.

文章标题 名称(可选) 电子邮件(可选) 描述

发送建议

注:本教程在Vultr VPS上测试通过,如需部署请前往Vultr.com