Apache
で設定しようとしているUbuntu 17.04を実行しているWebサーバーがあります。 virtualHostsを介して1台のマシンで2つのWebサイトをホストすることを決定するまで、すべてがうまく動作しました。これで、Apache
は、単一のホストでも有効化された状態での起動を拒否します。 Apache
を開始しようとするたびに、次のエラーが表示されます。
Apache2: Syntax error on line 80 of /etc/Apache2/Apache2.conf:
DefaultRuntimeDir must be a valid directory, absolute or relative to ServerRoot.
これを修正しようとする私の試みは、以下を含むものには至っていません。
apt purge Apache2 && rm -r /etc/Apache2
エラーメッセージの80行目はすべてDefaultRuntimeDir ${Apache_RUN_DIR}
であることを示しています。
そして、Apache_RUN_DIR
がどこで、または何として宣言されているのか、いつでもわかりません。
誰か助けてくれますか?
コマンド
source /etc/Apache2/envvars
(他のすべてを試した後)私の問題を整理しました。
すべてが正常かどうかを確認するには、次のコマンドを使用します
Apache2 -S
DNSレコードを使用するよりも速いことがわかりました。
Apache2は/etc/Apache2/envvars
を使用して環境変数を設定します。この情報を使用して、${Apache_RUN_DIR}
が指すディレクトリが有効であることを確認できます。
14.04から17.04にアップグレードするときに同じ問題が発生していました。問題は:${Apache_RUN_DIR}
が/var/run/Apache2
に設定されていましたが、/var/run
にApache2フォルダーがありませんでした。
私のための修正は:mkdir /var/run/Apache2
少なくともオプション-Vについては、「man Apache2」にアップデートがありません。
今日では、代わりに「apachectl」または「Apache2ctl」を使用する必要があります
少なくともいくつかのオプションについては、「Apache2」、
私の場合は、Apache2.confファイルの「すべて拒否」の行に関するもので、(再び)私の場合は「要求拒否」と入力されました。
php5.6
Apacheモジュールを再構築すると、この問題を修正できます。
押す Ctrl+Alt+T そしてこれらを入力してください:
Sudo a2dismod php5.6
Sudo a2enmod php5.6
次に、Apache2サービスを再起動します。
Sudo service Apache2 restart