Apache 网络服务器无法启动 - 不知道问题出在哪里

Apache 网络服务器无法启动 - 不知道问题出在哪里

我已经在本地机器(Linux Mint 15)上安装了 apache webserver,并且在我尝试安装 npm/nodejs 之前一切都运行正常。

每当我尝试启动 Apache 时都会出现此错误 -

module.js:340
throw err;
      ^
Error: Cannot find module '/LANG=en_US.UTF-8'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:901:3

我搜索了互联网以寻找解决此问题的方法并让 apache 重新工作,但没有成功。

我的问题是这样的 - 我不需要nodejs。我已经删除并卸载了npm正在node使用的。我已手动从和中apt-get删除了所有node_modulesnode目录。但问题仍然存在。/usr/lib~

我检查了 apache 的每个 .conf 和 .load 文件,但仍然无法弄清楚 apache 在哪里/如何/为何加载module.js文件node.js

有人可以帮忙吗?

编辑:

我的文件夹内容mods-enabled

access_compat.load  authz_user.load  filter.load       php5.load
alias.conf          autoindex.conf   mime.conf         setenvif.conf
alias.load          autoindex.load   mime.load         setenvif.load
auth_basic.load     deflate.conf     mpm_prefork.conf  status.conf
authn_core.load     deflate.load     mpm_prefork.load  status.load
authn_file.load     dir.conf         negotiation.conf
authz_core.load     dir.load         negotiation.load
authz_host.load     env.load         php5.conf

答案1

好吧,我终于明白了这一点!

首先,问题(我怀疑)是一个损坏的/usr/bin/env文件,该文件被编辑(可能是通过 npm/nodejs 安装)以通过看起来与节点相关的附加 shell 脚本加载许多(很多、很多)其他文件。

其次,apache2 安装的 mpm_prefork 也已损坏 - 这可能是我的错,试图查找/修复上述错误,我可能做了一些事情!

解决方案是重新安装所有内容 -

sudo apt-get install --reinstall coreutils—— 修复/usr/bin/env文件。

sudo apt-get purge apache2 apache2-utils apache2.2-bin

sudo apt-get autoremove-- 卸载并清理现有的 apache2 安装

sudo apt-get install apache2-- 全新安装 apache2

如果有人遵循本指南,请不要忘记备份您的虚拟主机配置或自定义 php.ini 配置(如果有)。

相关内容