Linux

【Linux入門】Webサーバー(Apache)構築方法 ②

Linux

Apache基本設定

メインの設定ファイル

Apacheのメイン設定ファイルは「/etc/httpd/conf/httpd.conf」になります。それぞれの設定項目と設定内容は以下の表の通りです。

設定項目設定内容デフォルト値
ServerRoot設定ファイルが保存されるディレクトリServerRoot “/etc/httpd”
ListenWebサーバで使用するポート番号Listen 80
ServerAdminWeb管理者のメールアドレスServerAdmin root@localhost
ServerNameWebサーバのホスト名とポート番号ServerName www.example.com:80
AddDefaultCharaset文字コード設定AddDefaultCharaset UTF-8
httpd.conf主な設定項目

設定ファイルを更新した場合はリロードをして設定を反映する必要があります。

$ httpd -t
Syntax OK

ユーザーディレクトリの設定

userdir.conf編集

ユーザーごとのホームページ用の設定は「/etc/httpd/conf.d/userdir.conf」で行います。次の内容を設定変更します。

  • UserDir disabledをコメントアウトする
  • #UserDir public_htmlのコメントを外す
<IfModule mod_userdir.c>
    #
    # UserDir is disabled by default since it can confirm the presence
    # of a username on the system (depending on home directory
    # permissions).
    #
    #UserDir disabled

    #
    # To enable requests to /~user/ to serve the user's public_html
    # directory, remove the "UserDir disabled" line above, and uncomment
    # the following line instead:
    #
    #UserDir public_html

設定の反映

$ sudo systemctl reload httpd

パーミッション変更

Apacheがユーザーのホームディレクトリにアクセス可能にします。

$ chmod 701 /home/user01

ホームページ用ディレクトリ作成

$ mkdir ~/public_html

コンテンツファイル配置

indexファイルをユーザーディレクトリにコピーします。

cp -p /var/www/html/index.html /home/user01/public_html/test.html

test.htmlを次の通り設定します。

<!DOCTYPE html>
<html lang="ja">

<head>
    <meta charase="utf-8">
    <title>My Home Page</title>
</head>

<body>
    <h1>userpage</h1>
</body>
</html>

以下の通りユーザーページが表示されました。

ディレクトリ一覧非表示設定

「ホスト名/~user01」でアクセスすると以下の様に表示されてしまいます。

これを非表示にするには「/etc/httpd/conf.d/userdir.conf」を次の通り設定します。

<修正前>Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
                    ↓
<修正後>Options MultiViews SymLinksIfOwnerMatch IncludesNoExec

設定後サービスを再起動

$ sudo systemctl reload httpd

設定反映後、次のように表示されます。

まとめ

いかがでしたでしょうか。今回設定した項目は代表的な設定のみでしたがApacheは他にも様々な設定・機能があります。今後はそのような設定も紹介していきます。今回は以上となります。ご覧いただきありがとうございました。

コメント

タイトルとURLをコピーしました