Gagal terhubung ke host memcache!

16

Saya benar-benar baru untuk memcached! Saya berhasil menginstal dan mulai memcached dengan perintah ini di host saya A (Ip 192.168.1.102)

memcached -u memcached -d -m 30 -l 127.0.0.1 -p 11211

Saya juga menambahkan entri ini ke iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT
-A INPUT -m state --state NEW -m udp -p udp --dport 11211 -j ACCEPT

me-restart layanan iptables dan mendengarkan port 11211

Telnet juga berfungsi!

telnet localhost 11211

Mencoba 127.0.0.1 ... Terhubung ke localhost. Karakter melarikan diri adalah '^]'.

Tapi saya terhubung ke host A ini dari Host B (IP 192.168.1.103) dengan skrip ini memcached_test.php

<?php
$memcache = new Memcache;
$memcache->connect('192.168.1.102', 11211) or die ("Could not connect");

$version = $memcache->getVersion();
echo "Server's version: ".$version."<br/>\n";

$tmp_object = new stdClass;
$tmp_object->str_attr = 'test';
$tmp_object->int_attr = 123;

$memcache->set('key', $tmp_object, false, 10) or die ("Failed to save data at the server");
echo "Store data in the cache (data will expire in 10 seconds)<br/>\n";

$get_result = $memcache->get('key');
echo "Data from the cache:<br/>\n";

var_dump($get_result);
?>

Ketika saya meramban skrip ini di server di host B (192.168.1.103). Saya menerima kesalahan ini

Peringatan: Memcache :: connect () [memcache.connect]: Tidak dapat terhubung ke 192.168.1.102:11211, Sambungan ditolak (111) di /var/www/memcache_test.php pada saluran 3 Tidak dapat terhubung

Tolong beri tahu saya cara mengatasi masalah ini!

billyduc
sumber

Jawaban:

15
# memcached -u memcached -d -m 30 -l 127.0.0.1 -p 11211

Anda akan melihat ada " -l 127.0.0.1" di baris perintah Anda. Ini memberitahu memcached untuk hanya mendengarkan pada antarmuka lo. Jika Anda ingin mengaksesnya dari mesin jarak jauh, Anda harus menghapus bagian dari baris perintah ini.

David Pashley
sumber
terima kasih banyak ... Saya ganti 127.0.0.1 dengan 192.168.1.102 dan sekarang berfungsi!
billyduc