Apache2 在apachectl开始获取打开的共享对象文件期间:没有这样的文件或目录

Apache2 在apachectl开始获取打开的共享对象文件期间:没有这样的文件或目录,apache2,Apache2,在成功安装Apache2(2.4.4)后,我尝试启动https服务器,但出现以下错误 bimlesh@server:/usr/local/apache2/bin$ ./apachectl start httpd: Syntax error on line 71 of /usr/local/apache2/conf/httpd.conf: Cannot load modules/mod_authn_core.so into server: /usr/local/apache2/modules/mo

在成功安装Apache2(2.4.4)后,我尝试启动https服务器,但出现以下错误

bimlesh@server:/usr/local/apache2/bin$ ./apachectl start
httpd: Syntax error on line 71 of /usr/local/apache2/conf/httpd.conf: Cannot load modules/mod_authn_core.so into server: /usr/local/apache2/modules/mod_authn_core.so: cannot open shared object file: No such file or directory
bimlesh@server:/usr/local/apache2/bin$ 
我查看了
/usr/local/apache2/modules/
,实际上就是这些。所以文件不可用。 谁能帮我摆脱这一切

如果我查看
/usr/local/apache2/modules/
文件夹,我会看到:(没有可用的.so文件)

或者在需要时安装updatedb(mlocate、slocate、findutils或其他)并运行

updatedb
然后(或之前)

找出这些文件是否不是应该的,并可能使用符号链接修复位置,或将文件移动到预期的位置

如果没有需要的文件,可能需要在httpd.conf(如果是特定模块)中对其进行注释,或者(重新)安装apache包。我相信mod_authn_内核应该在基本包中,而不是在单独的模块中。可能是有人盲目或意外地将其删除,或是有入侵者把系统搞砸了,或是磁盘坏了,或是别的什么

PS.模块通常位于“lib”下,例如/usr/local/lib/apache2或/usr/lib/apache2或/usr/lib/apache2/Modules或类似模块,而不在/usr/local/apache2/Modules中,尽管这通常取决于包的编译

你也可以跑步

apache2ctl -t -D DUMP_VHOSTS
找出哪些模块被编译为共享模块或静态模块。您还应该包括有关发行版的信息,并注意您是从源代码构建/安装的


另外,请看这里:

你能阅读我编辑的文章吗?这篇文章将提供更多的细节。我运行了“find-typef-name mod_authn_core.so”,文件不可用。你粘贴的不是你需要的。您需要*.so文件so,如果*.so文件不可用,您可能需要重新安装该软件包,并且mod_auth_core可能位于主软件包内,而不是附加软件包内。注意:我编辑了我的答案,请尝试使用find/-type f-name。。(参数中以“/”作为路径)
updatedb
locate mod_authn_core.so
apache2ctl -t -D DUMP_VHOSTS