【问题标题】:Connecting to Redis To Go with PHP使用 PHP 连接到 Redis To Go
【发布时间】:2011-06-22 13:25:10
【问题描述】:

我是 Redis 的新手...我最近刚刚拿起 Redisent 来使用 PHP 中的 Redis...我玩得很开心!但是,我注册了Redis to go服务,并且一直在拼命连接以使用该服务...

URI字符串如下:

redis://[username]:[pass]@[server].redistogo.com:[port]/

Redisent 客户端只接受主机名和端口...我没有地方输入用户名/密码... :-/ 我也一直在摆弄 fsockopen() 函数。 ..但没有得分。

有没有人尝试连接到 Redis 来使用 PHP?如果是这样,任何见解或指示将不胜感激!

注意:我知道有一个可用的 REST API,但那是用于配置实例,而不是用于 GET/SET 等实际操作。

【问题讨论】:

  • 您是否考虑过使用不同的 PHP 库来连接 Redis?我查看了 Redis to go 网站上的列表,其他一些人获取了密码。
  • 谢谢!当然,猜猜这就是我必须做的......我选择 Redisent 的一个原因是它只是传递命令而不重命名它们的方式。我会看看其他的,也许可以修改 Redisent 中的连接逻辑...=)

标签: php authentication redis


【解决方案1】:
$db = 1;
$password='password';
$aRedisServers['host']="127.0.0.1";
$aRedisServers['port']= "6379";
$r = new Predis_Client();
$r->connect($aRedisServers['host'], $aRedisServers['port']);
$r->auth($password);
$r->select($db);

$r->set("set","new");
echo $r->get("set");
//output new

【讨论】:

    【解决方案2】:

    predis 是首选库 (active development => 6 Januari 2011)。

    redis://$x:$y@$z
    

    那么你需要下面的代码来让它工作(我测试过):

    <?php
    
    require('./Predis.php');
    
    #redis://$x:$y@$z
    $redis   = new Predis\Client('redis://$z');
    $redis->auth($y);
    $redis->incr('counter');
    echo $redis->get('counter');
    echo "\n";
    

    奇怪的是$x。完全不需要?

    【讨论】:

    • 太棒了!将立即对其进行测试!
    • 是的!我得到了它!非常感谢=)
    【解决方案3】:

    根据现在的文档,您可以将其作为实例化的一部分...

    $redis = new Predis\Client(array(
        'host'     => '10.0.0.1', 
        'password' => 'secret', 
        'database' => 10, 
    ));
    

    $redis = new Predis\Client('redis://10.0.0.1/?password=secret&database=10');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-16
      • 1970-01-01
      • 1970-01-01
      • 2021-12-13
      • 1970-01-01
      • 2015-02-06
      • 2011-11-15
      相关资源
      最近更新 更多