Last update: 2025/2/13
Linuxの主要なWebサーバソフトウェアとしてはApacheとNginxがあるが、今回はApacheをインストールしてDocumentRootにhtmlファイルを置いてWebサイトを公開する手順をメモしておく。以下ではroot権限がある前提でコマンドを書くので、一般ユーザで作業する場合は適宜sudoを使う。
まずはApacheをインストールする。
# dnf install httpd
インストールが完了したらhttpdを起動する&サーバー起動時に自動で起動するようにしておく。
# systemctl start httpd
systemctl enable httpd
ファイアウォールが無効になっている場合は、まず有効にする。
# systemctl start firewalld
# systemctl enable firewalld
以下の設定でhttpとhttpsプロトコルを許可し、最後にファイアウォールサービスを再起動する。
# firewall-cmd --add-service=http --zone=public --permanent
# firewall-cmd --add-service=https --zone=public --permanent
# systemctl restart firewalld
基本的にはこれで設定は完了だが、さくらのVPSではパケットフィルター機能があるため、http/https通信を許可しておく必要がある(この設定を忘れていてしばらくはまった)。
さくらのVPSのコントローラパネルからサーバーのパケットフィルターの設定を開き、以下のようにhttpとhttpsの通信を許可しておく。
この状態で自分のIPアドレスをブラウザに入れてアクセスして、Apacheの画面が表示されればwebサーバーの設定としては完了となる。
ApacheのDocumentRootはデフォルトでは/var/www/htmlなので、ここにトップページとなるindex.htmlファイルを置けばWebサイトを公開できる。ファイルの置き方はいろいろあるが、今回はローカルPCからFileZillaを使ってSFTPでファイルを置くことにする。
/var/www/htmlディレクトリはデフォルトでは所有者しかwriteできず、所有者はrootになっている。今回はSSHでログインする一般ユーザーでSFTPでファイルを置けるように、/var/www/htmlディレクトリの所有者をログインするユーザーに変更した。
# chown ログインするユーザー名:root html
あとはhtmlディレクトリにファイルを置けばよい。私はSSHで鍵認証を使ってVPSにアクセスしているので、FileZillaの場合はサイトマネージャーで以下のようにSFTPを選択し、ホストにIPアドレス、ユーザーにログインするユーザ名、鍵ファイルにSSHの鍵ファイルを選択して接続する。
これでWebサイトを公開することができた。独自ドメインの設定方法やWebサイトのSSL化についてはまた別途メモしておく。
ネコでもわかる!さくらのVPS講座 ~第三回「Apacheをインストールしよう」 | さくらのナレッジ
Copyright (c) 2024 kd