LinuxベースのApacheウェブサイトサービス構成の詳細な説明

LinuxベースのApacheウェブサイトサービス構成の詳細な説明

オープンソース ソフトウェアである Apache は、最も広く使用されている Web アプリケーションの 1 つです。Apache には、1.X と 2.X という 2 つの主要なバージョンがあります。通常、バージョン 1.X に比べて多くの新機能をサポートするバージョン 2.X を使用します。Apache ソース コード パッケージをダウンロードするアドレスは、https://httpd.apache.org です。ソース コード パッケージをダウンロードしたら、インストールの準備を開始します。

1. ポートの競合、プログラムの競合、その他の問題を回避するために、rpm モードで httpd サービスがインストールされている場合は、アンインストールすることをお勧めします。

2. システムイメージをマウントし、システムディスクの Packages ディレクトリに切り替えて、関連する依存パッケージをインストールします (インストールパッケージがすでにインストールされている場合、次のインストールパッケージを一度にインストールするとエラーが発生するため、1 つずつインストールすることをお勧めします)。

3. httpd ソース コード パッケージを解凍し、リリース ディレクトリを指定して、展開されたソース コード ディレクトリに切り替えます。

4. 構成:

上記の設定コマンドにおいて、各オプションの意味は次のとおりです。

--prefix: httpd サービスがインストールされるディレクトリを指定します。

--enable-so: 動的モジュール読み込みサポートを有効にして、httpd の機能をさらに拡張できるようにします。

--enable-rewrite: ウェブサイトの最適化とディレクトリ移行のメンテナンスのために、Web アドレスの書き換え機能を有効にします。

--enable-charset-lite: さまざまな文字セットでエンコードされた Web ページをサポートするために、文字セット サポートを有効にします。

--enable-cgi: CGI スクリプトのサポートを有効にして、Web サイトのアプリケーション アクセス機能を拡張します。

5. make && make install コマンドを実行してコンパイルおよびインストールします。

上記の設定、コンパイル、インストールのプロセス中にエラーが発生し、コマンド エラーが除外される場合、通常は依存パッケージが不足していることが原因です。依存パッケージが不足していないかどうかを確認してください。

6. インストールが完了したら、インストールが成功したディレクトリに切り替えると、次のディレクトリが表示されます。

各主要サブディレクトリの目的は次のとおりです。

  • bin: httpd サービスのさまざまな実行可能プログラム ファイルを格納します。メインプログラム httpd、サービス制御ツール apachectl などが含まれます。
  • cgi-bin: さまざまな CGI プログラム ファイルを格納します。
  • logs: httpd サービスのログ ファイルを保存します。
  • conf: メイン設定ファイル httpd.conf や拡張設定サブディレクトリ extra など、httpd サービスのさまざまな設定ファイルを保存します。
  • htdocs: デフォルトのホームページ ファイル index.html などの Web ドキュメントを保存します。
  • module: httpd サービスのさまざまなモジュール ファイルを格納します。

7. 実行パスを最適化します(実際の状況に応じて、最適化はオプションです)。

ソースコードを通じてインストールされた httpd サービスはサードパーティのサービスであるため、プログラム パスはデフォルトの検索パスにありません。今すぐ Apache を起動する場合は、/usr/local/httpd/bin/apachectl start コマンドを実行する必要があります。これは、インストールが完了した後の bin ディレクトリ内のプログラム制御ファイルの絶対パスと、必要な操作を加えたものです。

次に、このサービスをより便利に使用できるように、実行パスを最適化します。プロセスは次のとおりです。

関連プログラムのシンボリックリンクを追加します。

この方法では、関連コマンドを実行するときに長いパスを入力する必要がありません。サービスを開始する場合は、/usr/local/bin/apachectl start を実行するだけです。ただし、これはシステム サービスを制御するほど便利ではありません。その後、httpd システム サービスの追加を続行できます。方法は 2 つあります。

方法1

apachectl ファイルを /etc/init.d/httpd にコピーし、ファイルを編集します。

次の変更を加えて保存し、終了します。

システム サービスを追加します。

この時点で、systemctl start/status/restart httpd を使用して、システム サービスを制御するのと同じように Apache サービスを制御できます。

システムサービスとして追加する方法もありますが、設定ファイルの編集も必要になり、面倒です。サービスをさらに定義できる可能性があります。個人的には、理解できれば十分だと思います。特別な要件がない場合は、上記の方法を使用できます。

方法2:

httpd.service 設定ファイルを作成します (設定ファイルのパスに注意してください。設定ファイルに記述されている apachectl パスは実際の状況に応じて決定する必要があります)

設定ファイル内の各設定項目の機能は次のとおりです。

どちらの方法にも利点があります。方法 2 ではサービスを詳細に定義でき、 systemctl enable httpd.serviceを使用して起動時に httpd サービスが自動的に開始されるように設定することもできますが、これは方法 1 では不可能です。

サービスの制御が最適化されると、httpd サービスの基本設定を実行できます。

1. httpdサービスのメイン設定ファイルhttpd.confを編集する

最終行モードで /ServerName を実行し、近くに ServiceName www.aaa.com という行を追加します。これは、Web サイトに対応するドメイン名を設定するために使用されます。次のように:

ServerName を見つけるには、最後の行モードを入力します。

httpd.conf ファイルの設定内容を変更した後、apachectl -t または httpd -t コマンドを使用して設定内容の構文チェックを実行できます。エラーがない場合は、次のように表示されます。

2. Webドキュメントを展開する:

新しくコンパイルされインストールされた httpd サービスの場合、Web サイトのルート ディレクトリは/usr/local/httpd/htdocsにあります。Web サイトの Web ドキュメントをこのディレクトリにコピーまたはアップロードする必要があります。

3. ウェブサイトのアクセス状況を確認する

httpd サーバーは、アクセス ログとエラー ログの 2 種類のログを使用します。これら 2 つのログのファイル名は acces_log と error_log で、どちらも /usr/local/httpd/logs ディレクトリにあります。 tail -f /usr/local/httpd/logs/access_log コマンドを使用すると、Web サイトのアクセス ステータスを動的に表示できます。

4. 最も重要なhttpd.confメイン設定ファイル

httpd.conf 内のコメント行は「#」で始まり、残りは設定行です。設定範囲に応じて、設定ラインはグローバル設定とリージョン設定に分けられます。各グローバル構成は独立した構成であり、他のタスク領域に含める必要はありません。よく使用されるグローバル構成項目は次のとおりです。

グローバル構成項目を除き、httpd.conf ファイル内の構成のほとんどはゾーンに含まれています。地域構成では、次のように、組み合わせたタグのペアを使用して構成項目の範囲を制限します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux インストール Apache サーバー構成プロセス
  • Linux で Apache を使用してファイル サーバーを構築する手順
  • Linux オペレーティング システムに Apache サービスをインストールする方法
  • Linux での Apache サーバーの構成と管理の簡単な分析
  • Linux での Apache サービスの展開と構成

<<:  node.js でマルチコア CPU を最大限に活用する方法

>>:  node.js が大規模プロジェクトに適さない理由

推薦する

JavaScript プログラムのループ構造の詳細な説明

目次構造を選択ループ構造その間…しながらforループ…のために…で…の…のためにまとめループの終了壊...

Windows 10 での MySQL 8.0 のダウンロードとインストール構成のグラフィック チュートリアル

この記事では、MySQL 8.0のダウンロードとインストールについてご紹介します。具体的な内容は以下...

JavaScript によるダイナミッククリスマスツリーの詳細な説明

目次1. CSS のみを使用して作成したアニメーションのクリスマスツリー2. CSS のみを使用して...

Centos6 で 20TB を超えるディスクをパーティション分割してフォーマットするためのサンプル コード

1. サーバー環境の構成: 1. ディスクパーティションを確認します。最近、あるプロジェクト内のサー...

MySQL クエリ データベース容量方法手順

すべてのデータベースの合計サイズを照会する方法は次のとおりです。 mysql> informa...

MySQLデータベースを使い始めるための最初のステップはテーブルを作成することです

データベースを作成する右クリック - 新しいデータベースを作成ライブラリ名を入力し、文字セットと並べ...

CSS における XHTML タグの対応する属性と使用法

XHTML CSS を使って Web ページをデザインし始めた頃は、タグの使用経験も少なく、あまり気...

mysql 5.7.17 winx64.zip インストールと設定方法のグラフィックチュートリアル

はじめに: Windows 10 を再インストールし、同時にファイルを整理しました。しかし、MySQ...

MySQL グループ化クエリと集計関数

概要私たちは、双十一に天猫で化粧品を購入する人の平均支出額を知りたい(商品の価格帯を見つけるのに役立...

WindowsX Hyper-V ベースの CentOS システムをインストールする

現在、Linux を使用するほとんどの人は、クラウド サーバーを使用するか、Windows 上に仮想...

Node.js のワーカー スレッドの詳細な理解

目次概要Node.js における CPU バウンド アプリケーションの歴史CPUを集中的に使用する操...

CSS疑似クラス名を数字で始めないでください

初心者が div+css を開発する場合、.ggg、#ccc などの形式の CSS 疑似クラス名を付...

MySQL 5.7 でルートパスワードを変更する方法

MySQL 5.7 以降では、多くのセキュリティ更新が追加されました。旧バージョンのユーザーは慣れて...

Linux の総合システム監視ツール dstat の詳細な例

オールラウンドなシステム監視ツール dstat dstat は、vmstat、iostat、nets...

Zabbix Agent2を使用してOracleデータベースを監視する方法

概要zabbix バージョン 5.0 以降では、zabbix-agent2 という新しい機能が追加さ...