ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
RHEL 系(CentOS / RHEL / Rocky / AlmaLinux)
/etc/httpd/ ← 設定全般
├── conf/
│ ├── httpd.conf ← メイン設定(このファイルが全体の起点)
│ └── magic
├── conf.d/ ← 追加設定ファイル(*.conf が自動 include)
│ ├── ssl.conf ← SSL 設定(mod_ssl 同梱)
│ ├── userdir.conf
│ └── welcome.conf
├── conf.modules.d/ ← モジュール読込定義
│ ├── 00-base.conf
│ ├── 00-mpm.conf ← MPM 切り替え(prefork/worker/event)
│ └── 10-php.conf ← PHP モジュール(mod_php 利用時)
├── logs → /var/log/httpd ← シンボリックリンク
├── modules → /usr/lib64/httpd/modules
└── run → /run/httpd
/var/www/ ← コンテンツ
├── html/ ← デフォルト DocumentRoot
├── cgi-bin/
└── error/
/var/log/httpd/ ← ログ
├── access_log
├── error_log
└── ssl_access_log
/usr/lib64/httpd/modules/ ← モジュール .so ファイル群
# サービス名
systemctl start httpd # ← httpd(apache2 ではない)
Debian 系(Debian / Ubuntu)
/etc/apache2/ ← 設定全般
├── apache2.conf ← メイン設定(このファイルが起点)
├── ports.conf ← Listen ポート指定(80/443 等)
├── envvars ← 環境変数(実行ユーザ等)
├── magic
├── conf-available/ ← 追加設定(無効)
│ ├── security.conf
│ ├── charset.conf
│ └── localized-error-pages.conf
├── conf-enabled/ ← conf-available のシンボリックリンク
│ ├── security.conf -> ../conf-available/security.conf
│ └── ...
├── sites-available/ ← バーチャルホスト(無効)
│ ├── 000-default.conf
│ └── default-ssl.conf
├── sites-enabled/ ← sites-available のシンボリックリンク
│ └── 000-default.conf -> ../sites-available/000-default.conf
├── mods-available/ ← モジュール定義 (.load + .conf)
│ ├── rewrite.load
│ ├── ssl.load
│ ├── ssl.conf
│ ├── php8.1.load
│ └── ...
└── mods-enabled/ ← mods-available のシンボリックリンク
/var/www/
└── html/ ← デフォルト DocumentRoot
/var/log/apache2/ ← ログ
├── access.log
├── error.log
└── other_vhosts_access.log
/usr/lib/apache2/modules/ ← モジュール .so
/var/lib/apache2/ ← 状態ファイル
└── ...
# サービス名
systemctl start apache2 # ← apache2(httpd ではない)
RHEL 系 vs Debian 系の主な違い
| 項目 | RHEL 系 | Debian 系 |
|---|---|---|
| サービス名 | httpd | apache2 |
| 設定ディレクトリ | /etc/httpd/ | /etc/apache2/ |
| メイン設定 | conf/httpd.conf | apache2.conf |
| VirtualHost 管理 | conf.d/ に直接書く | sites-available + a2ensite |
| モジュール管理 | conf.modules.d/ | mods-available + a2enmod |
| 実行ユーザ | apache:apache | www-data:www-data |
| ログ | /var/log/httpd/ | /var/log/apache2/ |
| バイナリ名 | httpd | apache2 + apachectl |
Debian 系の有効化コマンド
Debian 系ではシンボリックリンク方式で設定の有効・無効を切り替えます。設定ファイル本体を編集する必要はありません。
# サイト有効化(sites-available → sites-enabled にシンボリックリンク作成)
sudo a2ensite myapp.conf
sudo a2dissite 000-default.conf
# モジュール有効化(mods-available → mods-enabled)
sudo a2enmod rewrite
sudo a2enmod ssl
sudo a2enmod headers
sudo a2dismod status
# 追加設定有効化
sudo a2enconf security
sudo a2disconf serve-cgi-bin
# 変更を反映
sudo systemctl reload apache2
# 中身は単純なシンボリックリンク
ls -la /etc/apache2/sites-enabled/
# 000-default.conf -> ../sites-available/000-default.conf
# 手動で作っても同等
sudo ln -s /etc/apache2/sites-available/myapp.conf \
/etc/apache2/sites-enabled/myapp.conf
主要なファイルの役割
| ファイル | 役割 |
|---|---|
httpd.conf / apache2.conf | 大本の設定。全 include の起点 |
ports.conf (Debian) | Listen するポート(80/443) |
envvars (Debian) | 実行ユーザ・PID パス等の環境変数 |
*.load (Debian) | モジュールを LoadModule する 1 行ファイル |
*.conf (Debian mods) | モジュールごとの設定 |
sites-available/*.conf | VirtualHost 定義 |
.htaccess | ディレクトリ単位の設定(AllowOverride で有効化) |
VirtualHost の典型例
# /etc/apache2/sites-available/myapp.conf
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/myapp/public
<Directory /var/www/myapp/public>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/myapp_error.log
CustomLog ${APACHE_LOG_DIR}/myapp_access.log combined
</VirtualHost>
モジュール (.so) の場所
# RHEL 系
ls /usr/lib64/httpd/modules/
# mod_rewrite.so mod_ssl.so mod_headers.so ...
# Debian 系
ls /usr/lib/apache2/modules/
# ロード中のモジュール一覧
sudo apachectl -M # 静的+動的
sudo httpd -M # RHEL 系
設定の検証と表示
# 設定構文チェック
sudo apachectl configtest # → Syntax OK
sudo apache2ctl configtest # Debian 系
sudo httpd -t # RHEL 系
# 解釈された全設定をダンプ(include 展開済)
sudo apache2ctl -S # VirtualHost マッピング確認
sudo apache2ctl -t -D DUMP_MODULES
sudo apache2ctl -t -D DUMP_VHOSTS
sudo apache2ctl -t -D DUMP_INCLUDES
ログとローテーション
# ログ表示
sudo tail -f /var/log/apache2/error.log
sudo tail -f /var/log/httpd/access_log
# ローテーション設定
cat /etc/logrotate.d/apache2 # Debian 系
cat /etc/logrotate.d/httpd # RHEL 系
# 強制ローテーション
sudo logrotate -f /etc/logrotate.d/apache2
FAQ
Q: httpd と apache2 はソフトとして同じ?
A: 同じ Apache HTTP Server です。Red Hat 系の歴史的命名が httpd、Debian 系の慣習が apache2。バージョン体系も別管理。
Q: なぜ Debian は sites-available / sites-enabled を分けているのか
A: 設定ファイル自体を残したままシンボリックリンクで有効/無効をスイッチするため。テンプレを残せて、a2ensite/a2dissite で確実に切り替えられます。
Q: メイン設定をどこまで書く?
A: 全部 1 ファイルに詰めず、サイトごとに sites-available/サイト名.conf を作るのが推奨。RHEL 系も conf.d/サイト名.conf として分けると管理しやすい。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 Spring Frameworkのアノテーション一覧
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- PHP $_SERVERとは|DOCUMENT_ROOT・PHP_SELFなど主な要素 2026-08-07 17:15:57
- PHPでのファイルアップロード方法|multipart/form-dataと$_FILES 2026-08-07 17:15:57
- Scratchのアカウントの作り方|メールアドレスとユーザー名の登録手順 2026-08-07 17:15:57
- Bluetoothとは|仕組み・BLEとClassicの違い・用途 2026-08-07 17:15:57
- Spring Bootのテスト入門|@SpringBootTestとJUnitでの単体・結合テスト 2026-08-07 17:15:57
- djangoにおけるMVCアプリケーション実装例 2026-08-07 17:15:57
- Scratch 作品の公開方法 2026-08-07 17:15:56
- 【PHPフレームワーク】Laravelの使い方 2026-08-07 17:15:56
- Google OAuth 2.0 認証の実装方法 2026-08-07 17:15:56
- APIキー取得方法 2026-08-07 17:15:56
- インストール方法(Windows版) 2026-08-07 17:15:56
- Java とは?言語仕様・JVM・主要フレームワーク一覧 2026-08-07 17:15:56
- データベースとは?RDB / NoSQL / SQL の基礎 2026-08-07 17:15:56
- インストール(eclipseプラグイン) 2026-08-07 17:15:56
- Spring Frameworkの使い方 2026-08-07 17:15:56
コメントを削除してもよろしいでしょうか?