Apache 2.4.7を使用したUbuntu仮想マシン
次のエラーが発生します。
apache2: Syntax error on line 216 of /etc/apache2/apache2.conf: Could not open configuration file /etc/apache2/conf-enabled/servername.conf: No such file or directory Action 'configtest' failed.
注:実行すると、apachectl configtest
次のように表示されます。Syntax OK
ところで、そんなファイルがありますね!実際、Apacheはこれらすべてを自分で見つけました。上記の行216はですIncludeOptional conf-enabled/*.conf
。したがって、シェル拡張を形成し、confファイルのリストを取得し、そのうちの1つが存在しないと判断します。なぜ?
私たちが知っているように、inは/etc/apache2/conf-enabled
ファイルを指す一連のシンボリックリンクです。/etc/apache2/conf-available
a2enconf
私の場合、仮想マシン(Apacheや他のサービス用)を設定するための私の設定ファイルセットへのシンボリックリンクはそれ自体にありますservername.conf
。conf-available
何らかの理由で、Apacheはシンボリックリンクを見つけましたが、存在しないと報告します。 phpMyAdminは他のシンボリックリンクを使用して設定ファイルに接続し、エラーが発生しないため、これがなぜ問題なのか理解できません。
phpMyAdminファイルと私のファイルの1つの違いは、私のファイル(およびすべての親ディレクトリ)に777権限があることです。これは、仮想マシンの外部にマウントされた共有フォルダ(Windows 8.1ホストと共有)にあります。
Apache設定ファイルの777権限に問題がありますか?
編集:これはls -l
コメントで要求された出力です。
vagrant@vagrant-ubuntu-trusty-64:/vagrant/data$ ls -l /etc/apache2/conf-enabled/servername.conf lrwxrwxrwx 1 root root 33 Jun 29 2016 /etc/apache2/conf-enabled/servername.conf -> ../conf-available/servername.conf
以下はシンボリックリンクへのシンボリックリンクです。
vagrant@vagrant-ubuntu-trusty-64:/etc/apache2/conf-available$ ls -l servername.conf lrwxrwxrwx 1 root root 31 Jun 29 2016 servername.conf -> /vagrant/config/servername.conf
これは一般的なファイルです:
vagrant@vagrant-ubuntu-trusty-64:/vagrant/config$ ls -l servername.conf -rwxrwxrwx 1 vagrant vagrant 24 Jun 29 2016 servername.conf