나는 memcached에 완전히 새로운 사람입니다! 호스트 A에서이 명령으로 memcached를 성공적으로 설치하고 시작했습니다 (Ip 192.168.1.102)
memcached -u memcached -d -m 30 -l 127.0.0.1 -p 11211
또한이 항목을 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
iptables 서비스를 다시 시작하고 포트 11211을 청취했습니다.
텔넷도 작동합니다!
telnet localhost 11211
127.0.0.1 시도 중 ... localhost에 연결되었습니다. 이스케이프 문자는 '^]'입니다.
그러나이 스크립트 memcached_test.php를 사용하여 호스트 B (IP 192.168.1.103) 에서이 호스트 A에 연결합니다.
<?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);
?>
호스트 B의 서버에서이 스크립트를 검색하면 (192.168.1.103) 이 오류를 받았습니다
경고 : Memcache :: connect () [memcache.connect] : 192.168.1.102:11211에 연결할 수 없습니다. 3 행의 /var/www/memcache_test.php에서 연결이 거부되었습니다 (111).
이 문제를 해결하는 방법을 알려주십시오!