ローカルマシン(Linux Mint 15)にApache Webサーバーをインストールしましたが、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は必要ありません。 apt-get
を使用してnpm
とnode
を削除してアンインストールしました。 node_modules
および/usr/lib
からすべての~
およびnode
ディレクトリを手動で削除しました。しかし、問題はまだ残っています。
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
さて、私はついにこれの底に到達しました!
まず、問題(おそらく)は破損した/usr/bin/env
ファイルであり、ノード関連に見える追加のシェルスクリプトによって他の多くの(多くの)ファイルをロードするように編集されました(おそらくnpm/nodejsのインストールによって)。
次に、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構成(ある場合)のバックアップを取ることを忘れないでください。