サーバー用 PC に Web 関連パッケージをインストールして、サーバーの各ユーザーアカウント内で Web コンテンツの作成をできるように設定します。
Web サーバー関連パッケージのインストール
CentOS は、ダウンロードした CentOS-8-x86_64-1905-dvd1.iso を Fedora Media Writer で USB メモリに焼いてインストールしたのですが、デフォルトのインストールでは Apache HTTP Server はインストールされません。次のようにしてのようにして Apache HTTP Server をインストールしました。
$ sudo dnf install httpd httpd-devel メタデータの期限切れの最終確認: 0:17:53 時間前の 2019年10月06日 16時16分38秒 に実施しました。 依存関係が解決しました。 ================================================================================ パッケージ アーキテクチャー バージョン リポジトリ サイズ ================================================================================ Installing: httpd x86_64 2.4.37-11.module_el8.0.0+172+85fc1f40 AppStream 1.7 M httpd-devel x86_64 2.4.37-11.module_el8.0.0+172+85fc1f40 AppStream 215 k 依存関係をインストール中: apr x86_64 1.6.3-9.el8 AppStream 125 k apr-devel x86_64 1.6.3-9.el8 AppStream 246 k apr-util x86_64 1.6.1-6.el8 AppStream 105 k apr-util-devel x86_64 1.6.1-6.el8 AppStream 86 k centos-logos-httpd noarch 80.5-2.el8 AppStream 24 k httpd-filesystem noarch 2.4.37-11.module_el8.0.0+172+85fc1f40 AppStream 34 k httpd-tools x86_64 2.4.37-11.module_el8.0.0+172+85fc1f40 AppStream 102 k libdb-devel x86_64 5.3.28-36.el8 AppStream 46 k mod_http2 x86_64 1.11.3-2.module_el8.0.0+10+abf51267 AppStream 156 k cyrus-sasl-devel x86_64 2.1.27-0.3rc7.el8 BaseOS 127 k expat-devel x86_64 2.2.5-3.el8 BaseOS 55 k openldap-devel x86_64 2.4.46-9.el8 BaseOS 810 k 弱い依存関係をインストール中: apr-util-bdb x86_64 1.6.1-6.el8 AppStream 25 k apr-util-openssl x86_64 1.6.1-6.el8 AppStream 27 k Enabling module streams: httpd 2.4 トランザクションの概要 ================================================================================ インストール 16 パッケージ ダウンロードサイズの合計: 3.8 M インストール済みのサイズ: 12 M これでよろしいですか? [y/N]: y パッケージのダウンロード中です: (1/16): apr-util-1.6.1-6.el8.x86_64.rpm 50 kB/s | 105 kB 00:02 ... (途中省略) ... インストール済み: httpd-2.4.37-11.module_el8.0.0+172+85fc1f40.x86_64 httpd-devel-2.4.37-11.module_el8.0.0+172+85fc1f40.x86_64 apr-util-bdb-1.6.1-6.el8.x86_64 apr-util-openssl-1.6.1-6.el8.x86_64 apr-1.6.3-9.el8.x86_64 apr-devel-1.6.3-9.el8.x86_64 apr-util-1.6.1-6.el8.x86_64 apr-util-devel-1.6.1-6.el8.x86_64 centos-logos-httpd-80.5-2.el8.noarch httpd-filesystem-2.4.37-11.module_el8.0.0+172+85fc1f40.noarch httpd-tools-2.4.37-11.module_el8.0.0+172+85fc1f40.x86_64 libdb-devel-5.3.28-36.el8.x86_64 mod_http2-1.11.3-2.module_el8.0.0+10+abf51267.x86_64 cyrus-sasl-devel-2.1.27-0.3rc7.el8.x86_64 expat-devel-2.2.5-3.el8.x86_64 openldap-devel-2.4.46-9.el8.x86_64 完了しました! $
サービスの起動
Apache HTTP Server のサービス、httpd を起動 (start) します。また、OS 起動後にサービスが使えるように有効化 (enable) しておきます。
$ sudo systemctl start httpd $ sudo systemctl enable httpd Created symlink /etc/systemd/system/multi-user.target.wants/httpd.service → /usr/lib/systemd/system/httpd.service. $
ファイアーウォールの設定
HTTP で通信できるようにサービスを追加後、ファイアーウォールのサービスを再ロードします。
$ sudo firewall-cmd --zone=public --permanent --add-service=http success $ sudo firewall-cmd --reload success $
LAN 内の他の PC のブラウザからこの CentOS (192.168.0.12) へアクセスして、トップページが表示されることを確認します。
ユーザ毎のウェブディレクトリ
ユーザアカウント内の public_html 内をウェブサイトとして利用できるように /etc/httpd/conf.d/userdir.conf を編集します。下記にコメントを除いた設定ファイルの内容と、変更した箇所を赤字で示しました。
<IfModule mod_userdir.c> #UserDir disabled UserDir public_html </IfModule> <Directory "/home/*/public_html"> AllowOverride FileInfo AuthConfig Limit Indexes Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS </Directory>
ユーザアカウント内に public_html ディレクトリを作成します。この例ではユーザアカウントは bitwalk のみです。パーミッションは下記のようになっています。
$ cd ~ $ mkdir public_html $ chmod 755 /home/bitwalk $ ll -d /home/bitwalk drwxr-xr-x. 21 bitwalk bitwalk 4096 10月 6 16:46 /home/bitwalk $ ll -d /home/bitwalk/public_html drwxrwxr-x. 2 bitwalk bitwalk 6 10月 6 16:46 /home/bitwalk/public_html $
httpd を再起動します。
$ sudo systemctl restart httpd
SELinux の設定
最後に SELinux で httpd_enable_homedirs を有効にします。
$ sudo setsebool -P httpd_enable_homedirs 1
簡単な Web ページで確認
LAN 内の他の PC から、下記のサイトがアクセスできることを確認します。事前に index.html と test.html を用意して /home/bitwalk/public_html/ に保存しておきました。
http://192.168.0.12/~bitwalk/
まとめ
最低限の設定ですが、これで初期の目標を達成できました。今後も httpd に関わる設定について、何回も設定する場面が予想されるものについては備忘録でまとめて行く予定です。
nginx についても、調べて確認した結果をまとめていきたいと考えています。
参考 サイト
にほんブログ村
0 件のコメント:
コメントを投稿