CentOS7のhttpd VirtualHost設定でForbiddenになってしまう

2020年4月16日木曜日

CentOS7

t f B! P L
CentOS7でapacheを使ってウェブサーバを構築している時に、Forbiddenエラーが出ました。
しかし、何度apacheの設定を調べても間違いが見つかりません。ウェブサイトのDocumentRootはVirtualHostで設定しています。

原因

SELinuxが有効になっているのがForbiddenの原因でした。SELinuxが有効になっていると、ディレクトリ表示でパーミッションの最後にドット"."表示されます。

drwx------. 6 katsuwo users    222 Apr 16 17:00 .
drwxr-xr-x. 3 root   root      20 Apr 16 12:56 ..
-rw-------. 1 katsuwo users   1519 Apr 16 17:01 .bash_history
-rw-r--r--. 1 katsuwo users     18 Aug  8  2019 .bash_logout
-rw-r--r--. 1 katsuwo users    193 Aug  8  2019 .bash_profile
-rw-r--r--. 1 katsuwo users    231 Aug  8  2019 .bashrc
drwxr-xr-x. 3 katsuwo users     22 Apr 16 13:43 .cache
drwxr-xr-x. 3 katsuwo users     22 Apr 16 13:43 .config
-rw-r--r--. 1 katsuwo users      4 Apr 16 17:00 index.html
SELinuxを無効にするには、/etc/selinux/configのSELINUXをdisableにして、機器をリブートする必要があります。

/etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
SELinuxの状態は、getenforceで確認できます。

$getenforce
Disabled
SELinuxが有効(enforcing)時に作成したファイルは、SELiuxを無効(disabled)にした後もドット"."が表示されたままになります。SELInuxを無効にした後に作成したファイルにはドット"."は表示されません。

このブログを検索

ブログアーカイブ

QooQ