我正在尝试从另一台机器(可以访问我的服务器)使用 memcached,但我不知道如何操作。
在 memcached 机器上,我可以通过运行以下命令来测试连接
telnet 127.0.0.1 port
它可以工作,但在另一台机器上它只是不断尝试连接
telnet machine_address port
Trying machine_address...
我不确定是否应该设置其他东西来使其工作。我知道端口正在工作并且可以访问,因为如果我尝试在其上运行其他服务,它们就会工作。
操作系统是 ubuntu
答案1
在 /etc/memcached.conf 中:
# Specify which IP address to listen on. The default is to listen on all IP addresses
# This parameter is one of the only security measures that memcached has, so make sure
# it's listening on a firewalled interface.
-l 127.0.0.1
将其更改为
-l 0.0.0.0
并重新启动 memcached。
答案2
编辑-l
中的行/etc/memcached.conf
。这是存储启动选项的地方。
以下行将允许 memcached 监听所有接口:
sudo sed 's/-l/#-l/' /etc/memcached.conf && sudo service memcached restart
答案3
有两种基本可能性:
- 您已将 memcached 实例设置为仅在本地环回接口上监听——您可以在
netstat -l
输出中检查这一点。 - 您的防火墙已
iptables
设置为拒绝所有传入连接(明确允许的连接除外)。