再起動すると、次のエラーが発生し続けますhttpd
。
ドキュメントルートが存在しません。
編集を無効にする以外に問題を解決するにはどうすればよいですか/etc/sysconfig/selinux
?
答え1
テキストエディタを使用して/etc/selinux/targeted/booleansファイルを開きます。
# vi /etc/selinux/targeted/booleans
次のようにhttpd_disable_trans値を追加または変更します。
httpd_disable_trans=1
ファイルを保存して閉じます。次の 2 つのコマンドを入力します。
# setsebool httpd_disable_trans 1
# /etc/init.d/httpd restart
PostInstallerFが役に立ちます
次のリソースからヘルプを入手できます。
答え2
SELinuxを無効にしないでください。それは問題を要求するだけです。
トラブルシューティングに関してはただ私の言葉を引用するとここで:
Web文書をアーカイブするために、標準のファイルシステム層の外に新しいディレクトリを作成したようです。
これにより、SELinuxはカスタムディレクトリ構造またはApache(httpd)がそれにアクセスする必要があることを知りません。/var/log/audit/audit.log
この場合、拒否メッセージが表示されます。
実際に問題を解決するには、ApacheがそのディレクトリにアクセスできることをSELinuxに通知する必要があります。以下を使用してこれを行います。意味論的文脈注文する:
semanage fcontext -a -t httpd_sys_content_t "/volume1/web(/.*)?"
パターンマッチングは正規表現を使用して行われるため、正規表現と/volume1/web
その下のすべての項目が一致します。正規表現を使用することは、上記のように引用しなければならないという意味でもあります。
次に、ファイルにタグを付け直します。
restorecon -r -v /volume1/web
SELinuxは現在Apacheアクセスを許可します/volume1/web
。