重启阿里云服务器后网站无法访问的问题解决

背景

公司IOS反馈说,有一张图片的网址请求后,有时请求失败,有时请求成功但是只显示一部分。

检查过程

  • 前端检查图片的request,发现图片加载到一半时会失败。
  • ping了一下图片的url,发现是存放在公司一台已经弃用的服务器上。
  • 检查服务器的各项参数,发现服务器的硬盘空间爆满。
  • 猜测与空间不足有关,但是由于该服务器没有任何交接文档,因此不知道密码,只能重置密码并重启服务器【阿里云服务器重置密码需要重启】

问题1,无法远程ssh登录服务器

解决:尝试重启ssh服务,修改iptables配置,重启iptables服务等操作后,发现ssh端口并不是默认的22端口,而是被修改过的,因此修改下登录的端口解决问题。

问题2,服务器空间不足

解决:发现空间主要被日志和之前存储的图片占用,因此使用tar -zvcf命令归档日志后,删除日志释放空间。

问题3,网站无法访问

解决:whereis nginx查询是否存在nginx服务,发现有,于是启动nginx即可。

问题4,访问图片报502

解决:

  • 查询nginx的错误日志,发现有报错  *1477 no live upstreams while connecting to upstream,说明没有后端服务在处理请求。
  • 一开始以为是没有开启php-fpm服务,whereis php-fpm发现没有相关服务,因此排除。
  • 猜测是用nginx+web.py的方式搭建服务器,然而用输入命令spawn-fcgi,没有该命令,因此排除。
  • 在nginx中发现反向代理  proxy_pass http://localhost:8080;   8080端口一般是node.js或java服务器用的,在命令中输入java,发现服务器安装了java,因此很大可能性是通过nginx转发到tomcat服务器。
  • whereis tomcat 没有发现有tomcat的文件或目录,但是在查询资料的过程中,了解到tomcat的路径一般为/usr/local/tomcat,因此尝试查找,发现在 /usr/local/   目录下有  tomcat8080_XXXX/  的文件夹。
  • 启动tomcat:./startup.sh   。
  • 问题解决。

总结

  • whereis命令只能用于程序名的搜索,和find相比,whereis查找的速度非常快,这是因为linux系统会将 系统内的所有文件都记录在一个数据库文件中,当使用whereis和下面即将介绍的locate时,会从数据库中查找数据,而不是像find命令那样,通 过遍历硬盘来查找,效率自然会很高。 但是该数据库文件并不是实时更新,默认情况下时一星期更新一次,因此,我们在用whereis和locate 查找文件时,有时会找到已经被删除的数据,或者刚刚建立文件,却无法查找到,原因就是因为数据库文件没有被更新。 【可能本服务器的tomcat的安装方式没有更新到该数据库文件,也有可能是其他原因,待查】
  • 解决了空间不足问题后,图片就能正常显示了,具体的原因待查。
  • 服务自启动和工作交接的重要性。

其他

  • 添加nginx和tomcat到服务器自启动项
  • vi /etc/rc.local     
  • /etc/init.d/nginx start  
    /usr/local/tomcat8080_child/bin/startup.sh

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页