Nginx 启动报错 (nginx: error while loading shared libraries: XXX: cannot open shared object file: No such file or directory ) 的解决办法

 本文解决 Nginx 因库文件缺失而无法启动问题

  没有采用缺失什么就安装什么的解决办法, 而是借助于另一个正常运行的Linux , 将其上的库文件发送给缺失库文件的 Linux 服务器

以 缺失  libharfbuzz.so.0 为例 , 其它库文件缺失 大同小异

前提摘要:     

  今天打开我的网址 www.cheery.pro 时发现,  多次重试也没反应, 这可怎么办? 这是怎么回事

  

 

问题探究: 

 

ping了一下服务器发现可以ping通,  于是猜测可能是Nginx 出现了问题,

  打开宝塔面板, 果然发现nginx没有启动, 于是点击启动发现报错  nginx: error while loading shared libraries: libharfbuzz.so.0: cannot open shared object file: No such file or directory

  这是怎么呀? 看不懂, 在这串英文中发现 shared libraries , 后面那个可能是 某个库文件缺失吧, 于是我搜索了一下这个报错信息, 没有找到解决办法

  再试了很多搜索办法后发现, 有个类似的 ,可是他缺失的那个库文件和我这个文件名不同啊 , 他的解决办法是 到官方下载缺失的库文件然后安装 ,

  这么麻烦???

  首先安装我就不会, 其次我怎么安装 安装到哪里?

 

我又找别的的博客看看有没有什么解决办法, 没有还是没有找到, 只能靠自己了;

 

尝试解决问题; 

 

我想了一下我自己的电脑上的 Nginx 是可以正常启动的, 那是不是 就说明我自己的电脑上是有这个配置文件的

  于是输入 locate libharfbuzz.so.0 命令进行查找, 果然找到了

 

 

   同样的在我的服务器上也找一下, 可能有或许是路径不对  同样输入上面的命令, 果然是没有的, 这就验证了我的猜想 

于是 使用 scp 命令发送过去 

 

  scp libharfbuzz.so.0 root@www.cheery.pro:/lib/x86_64-linux-gnu

 

 

 

 

这里要注意一下, 你确实的库文件的名字是什么? 还有服务器的路径名 ,是你locate找到的那个路径, 不同的 版本可能是不同的 

 

  现在服务器上有这个库文件了, 试试能不能启动吧 

 

 

 

 

  启动成功了, 我们成功的解决了这个问题,

  我的网站也可以正常访问了

 

  所以网上找不到解决方案 就自己想办法吧, 自己能解决才是最好. 

 

遇到文件也不能因为找不到解决的博客 帖子而烦恼自己想想或许就找到解决方法了

 

posted @ 2020-02-13 23:32  Cherrison_Time  阅读(2298)  评论(0编辑  收藏  举报