Я установил веб-сервер apache на свой локальный компьютер (Linux Mint 15), и все работало нормально, пока я не попытался установить 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_modules
и node
каталоги из /usr/lib
и ~
. Но проблема все еще остается.
Я проверил каждый файл .conf и .load на наличие apache и до сих пор не могу понять, где / как / почему загружается 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
Хорошо, я наконец дошел до сути!
Во-первых, проблема (я подозреваю) была в повреждении /usr/bin/env
файл, который был отредактирован (возможно, при установке npm / nodejs) для загрузки множества (многих, многих) других файлов дополнительным сценарием оболочки, который выглядел связанным с узлами.
Во-вторых, mpm_prefork установки apache2 также был поврежден - возможно, это моя ошибка, пытаясь найти / исправить указанную выше ошибку, возможно, я что-то сделал!
Решение было переустановить все -
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, если таковая имеется.