图片服务器搭建及上传测试,网络配置问题(errno: 111)

GitHub:https://github.com/JDawnF

有点小感动,可能卡了一个星期的bug要被我解决了,这里记录一下这个解决过程吧,希望对大家有所帮助。

环境:Mac,VM fusion:centos 6.4;

背景:已经搭好图片服务器,但是一直报

ERROR - file: connection_pool.c, line: 110, connect to 192.168.232.249:22122 fail, errno: 111, error info: Connection refused    

可能的原因:1.Nginx和storage端口不一致;2.虚拟机网络配置问题;3.虚拟机关了之后重启可能要重新开启storage和tracker服务

之前跟着tt商城搭建好服务器后,第一次刚开始啥都不懂,就跟着视频弄 ,因为环境还有资料不大一样,所以后面才反应过来主机跟虚拟机一直ping不通,  折腾几天后无果决定重新导入虚拟机

这次我学乖了,先搞好网络配置

首先,要注意虚拟机是nat模式;再看看虚拟机ip地址(ifconfig,inet就是虚拟机地址)

然后再到/etc/sysconfig/network-scripts这个目录下面。注意这里的eth0,lo其实就是ifconfig里面那两个东东,一定要命名一直,然后最好不要有其他的ifcfg-**文件了,如果有最好先删了;

### 可能的原因 Redis连接失败并返回错误码111通常表示连接被拒绝。这可能是由于以下几个原因: - Redis服务未运行:如果Redis服务器没有启动,则不会监听默认的6379端口[^1]。 - 防火墙或安全组设置:系统的防火墙规则或云服务商的安全组配置可能会阻止对6379端口的访问。 - Redis配置问题:`redis.conf`中的配置可能导致Redis仅绑定到特定IP地址,或是禁用了远程连接功能。 - 端口冲突:如果有其他程序占用了6379端口,那么即使Redis尝试启动也会因端口已被占用而无法正常工作。 ### 解决方案 #### 检查Redis服务状态 确认Redis进程是否正在运行。可以使用如下命令来检查Linux系统上的Redis服务状态: ```bash sudo systemctl status redis ``` 对于macOS用户来说,可以通过Homebrew安装的服务管理工具进行查询: ```bash brew services list | grep redis ``` #### 测试网络连通性和端口可用性 确保客户端能够到达目标主机以及相应的TCP端口开放无阻塞。可利用telnet命令来进行简单的测试: ```bash telnet 127.0.0.1 6379 ``` 若成功建立连接则说明基本环境搭建正确;反之则需进一步排查防火墙策略或其他潜在障碍因素。 #### 修改Redis配置文件 编辑位于/etc/redis下的`redis.conf`文件(具体路径取决于操作系统),查找并调整以下参数以允许外部访问(注意安全性): ```conf bind 0.0.0.0 # 将其改为任意网卡接口均可接受请求,默认只绑定了localhost protected-mode no # 关闭保护模式以便于更宽松地接收来自不同源的数据包 port 6379 # 设置监听端口号为6379, 如果更改过这里也要同步修改应用层代码里的链接字符串部分 requirepass yourpasswordhere # (可选) 设定密码提高安全性 ``` 保存变更后的配置文件,并重启Redis服务使改动生效。 #### 排除端口冲突可能性 通过lsof命令找出当前哪个应用程序占据了6379端口: ```bash sudo lsof -i :6379 ``` 一旦发现有非预期的应用在此处活动,请终止它或将之迁移至另一个不冲突的位置之上再试一次。 最后,在完成上述操作之后再次执行ping命令验证能否顺利抵达远端实例: ```bash redis-cli ping ``` 当收到PONG响应时表示一切恢复正常。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值