• 投稿日:2023年06月09日 10時23分45秒
  • 更新日:2023年06月09日 10時24分44秒
UbuntuにApacheをインストール

UbuntuにApacheをインストール

詳細

この記事は以下作業の後におこなっております。

Apacheのインストール

Apacheをインストールします。

インストール後は起動状況を確認して、hostnameコマンドの戻り値を使ってブラウザからアクセスできるか確認してください。

apt install apache2

systemctl status apache2

hostname -I

ファイヤーウォールを有効にしている場合はそちらの設定も行ってください。

ufw app list

ufw allow 'Apache'

ufw status

私の環境では既にNginxをインストールしていたので、そちらを無効にします。自動起動をオフにすることを忘れずに。

Apacheの自動起動を有効にし、サイトドメインの設定ファイルを作成します。

systemctl stop nginx.server

systemctl desable nginx.server

systemctl enable apache2

nano /etc/apache2/sites-available/your_domain.conf

テンプレ的な内容を記載します。

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

後は作成した設定を有効にし、不要なデフォルトを無効にします。

ここまで出来れば再起動します。

a2ensite your_domain.conf

a2dissite 000-default.conf

systemctl restart apache2

WordPressを使う場合

WordPressを使う場合は上記以外に必要なモジュールもあるので、そちらのインストールと設定をします。

apt install libapache2-mod-php

a2enmod rewrite

systemctl restart apache2

httpd.confがなくなり、a2enmodコマンドで設定するように変わったので注意してください。

Apache実行ユーザ:グループを変更

ennvarsファイルに設定があるので、そちらを修正します。

nano /etc/apache2/envvars
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
↓
export APACHE_RUN_USER=[ユーザ名]
export APACHE_RUN_GROUP=[グループ名]

.htaccessを有効にする場合

.htaccessを有効にしたい場合はapacheの設定に許可を記載しなくてはいけません。

nano /etc/apache2/apache2.conf
<Directory /var/www/>
        Options Indexes FollowSymLinks
        #AllowOverride None
        AllowOverride All
        Require all granted
</Directory>

Directoryで対象のパスを指定し、そのパス以下は全て設定を適用するみたいです。

既定値はNoneで全てを拒否しているのでAllなどに変更すると有効となります。
変更後はsystemctlコマンドでapache2.serverを再起動する必要があります。

おまけ

複数ポートで受け付ける設定

nano /etc/apache2/ports.conf

元々「Listen 80」と記述されていると思います。
これは80番ポートで受け付けているという意味です。

複数受け付けたい場合はこの下(どこでもいいがまとめたほうがいい)に追加したいポートを記述します。

Listen 80
Listen 50001

続いてconfファイルを作成し、そこにサイト独自の設定を行います。

<VirtualHost *:50001>
    ServerAdmin webmaster@localhost
    ServerName your_domain
    ServerAlias www.your_domain
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

最後にapacheを再起動します。

systemctl restart apache2.service

SPECIAL THANKS

  1. Ubuntu 20.04にApache Webサーバーをインストールする方法 -Community-
  2. Ubuntu 20.04 LTS Server】Apache2とPHPを動かす -The modern stone age-
  3. Wordpressでトップページ以外が表示されない -rp1.jp-
秘密鍵・公開鍵周りではまったことのメモ
Laravel Sailでサクッと環境構築
Ubuntuからインストーラを使ってインストールしたNode.jsを削除する
無料でサイトをSSL化する
WSL2を使ってDcoker/Ubuntu環境を構築する
cURLをインストールする
UbuntuにApacheをインストール
UbuntuにNginx, MySQL, php をインストールする