Centos7.4 サーバーへの Apache のインストールとインストール プロセス中に発生した問題の解決策

Centos7.4 サーバーへの Apache のインストールとインストール プロセス中に発生した問題の解決策

この記事では、CentOS 7.4 サーバーに Apache をインストールする方法と、インストール プロセス中に発生する問題を解決する方法について説明します。ご参考までに、詳細は以下の通りです。

1. httpdをインストールする

1. インストールの前に、システムに httpd.rpm パッケージがインストールされているかどうかを確認します。インストールされていない場合はインストールされていません。インストールされている場合は、rpm -e で対応する rpm パッケージ名を使用して削除します。

#rpm -qa | grep httpd

2. yumを使用してインストール(依存パッケージを自動的にインストール)する、シンプルで便利

#yum -y httpdをインストール

3. インストールが成功したら、httpd-vを使用してインストールされているApacheのバージョンを確認し、Apache構成ファイルの場所を見つけます。

#検索 / -name "httpd.conf"

4. リカバリの失敗を防ぐためにソース構成ファイルをバックアップする

#cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bak

5. Apacheサービスを開始する

#systemctl httpd.service を起動します

6. 起動時にApacheサービスを自動的に開始する

#systemctl enable httpd.service 起動時にhttpdを自動的に起動する
#systemctl enable httpd.service 起動時にhttpdを起動しない

7. httpdのステータスを確認する

#systemctl ステータス httpd.service

2. インストール中に問題が発生する

1. Apache の起動に失敗しました。制御プロセスがエラー コードで終了したため、httpd.service のジョブが失敗しました。詳細については、「systemctl status httpd.service」および「journalctl -xe」を参照してください。

コマンドを実行し、エラーメッセージを確認します

#systemctl ステータス httpd.service

[root@cloud1 bin]# systemctl ステータス httpd.service
  httpd.service - Apache HTTP サーバー
  ロード済み: ロード済み (/usr/lib/systemd/system/httpd.service; 無効; ベンダープリセット: 無効)
  アクティブ: 失敗 (結果: 終了コード) 2018-11-26 11:13:09 CST 以降; 6 分前
   ドキュメント: man:httpd(8)
      男:apachectl(8)
 プロセス: 9915 ExecStop=/bin/kill -WINCH ${MAINPID} (コード=終了、ステータス=1/FAILURE)
 プロセス: 9913 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (コード=終了、ステータス=1/FAILURE)
 メイン PID: 9913 (コード = 終了、ステータス = 1/失敗)
11月26日 11:13:09 cloud1.localdomain httpd[9913]: (98)アドレスは既に使用されています: AH00072: make_sock: アドレス [::]:80 にバインドできませんでした
11月26日 11:13:09 cloud1.localdomain httpd[9913]: (98)アドレスは既に使用されています: AH00072: make_sock: アドレス0.0.0.0:80にバインドできませんでした
11月26日 11:13:09 cloud1.localdomain httpd[9913]: 利用可能なリスニングソケットがありません。シャットダウンします
11月26日 11:13:09 cloud1.localdomain httpd[9913]: AH00015: ログを開けません
11月26日 11:13:09 cloud1.localdomain systemd[1]: httpd.service: メインプロセスが終了しました、コード=終了、ステータス=1/FAILURE
11月26日 11:13:09 cloud1.localdomain kill[9915]: kill: プロセス "" が見つかりません
11月26日 11:13:09 cloud1.localdomain systemd[1]: httpd.service: 制御プロセスが終了しました、コード=終了 ステータス=1
11月26日 11:13:09 cloud1.localdomain systemd[1]: Apache HTTP Serverの起動に失敗しました。
11月26日 11:13:09 cloud1.localdomain systemd[1]: ユニットhttpd.serviceが失敗状態になりました。
11月26日 11:13:09 cloud1.localdomain systemd[1]: httpd.service が失敗しました。

問題はポート80が占有されていることだ

解決:

ポート80の使用状況を確認する

netstat -lnp|grep 80

tcp 0 0 192.168.180.68:61027 0.0.0.0:* LISTEN 6289/oproxyd
tcp 0 0 :::80 :::* 846/httpdをリッスン
tcp 0 0 ::ffff:192.168.180.68:7001 :::* LISTEN 32015/java

ポート80を占有しているプロセスを強制終了する

② . kill -9 846

③. 最初の2つの方法が機能しない場合は、再起動してからhttpdサービスを起動します。

2. Apache の起動に失敗しました。httpd: httpd: ServerName に localhost.localdomain を使用して、サーバーの完全修飾ドメイン名を確実に特定できませんでした。

①. Apache設定ファイルを入力する

vi /etc/httpd/conf/httpd.conf

② ./ServerName ServerNameを検索

#サーバー名 www.example.com:80

先頭の#を削除します

:wq wq保存して終了

③. サービスを再起動する

systemctl で httpd.service を再起動します。

この記事が CentOS サーバーの設定に役立つことを願っています。

以下もご興味があるかもしれません:
  • Centos7 での mysql 8.0.15 のインストールと設定
  • Centos7.4 環境に lamp-php7.0 をインストールするチュートリアル
  • Centos7.5 構成 Java 環境のインストール Tomcat の説明
  • Centos7 サーバーで jar パッケージ プロジェクトを開始する最良の方法
  • Alibaba Cloud Centos7のインストールとSVNの設定
  • CentOS7 systemdにカスタムシステムサービスを追加する方法
  • CentOS7 のシステム サービスに Nginx を追加する方法
  • Linux での Centos7 ファイアウォールの基本的な使用方法の詳細な説明
  • Centos7.x での Nginx のインストール、SSL 設定、一般的なコマンドの詳細な説明
  • CentOS 7 ブートカーネルの切り替えとブートモードの切り替えの説明

<<:  MYSQL updatexml() 関数のエラーインジェクション分析

>>:  VUE+Express+MongoDBのフロントエンドとバックエンドの分離によるノートウォールの実現

推薦する

Docker環境でMySQLを実行し、Binlogを有効にしてマスタースレーブ同期を構成する方法

同じサーバーで、Docker を使用して Mysql のマスター スレーブ同期設定をシミュレートしま...

MySQL無料インストール版のパスワード設定に関する詳細なチュートリアル

方法1: SET PASSWORDコマンドを使用する MySQL -u ルート mysql> ...

MySQL 5.7 の Docker バージョンを MySQL 8.0.13 にアップグレードし、データを移行する

目次1. 古いMySQL5.7データをバックアップする2. MySQL8.0.13のイメージをプルし...

動的なテーブル効果を実現するJavaScript

この記事では、動的なテーブル効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...

HTML ページ適応幅テーブル

WEB アプリケーションのページでは、テーブルがよく使用されます。列の数が限られているため、各列のコ...

nginxの基礎を学ぶ

目次1. nginx とは何ですか? 2. nginx で何ができるのか? 2.1 フォワードプロキ...

ボタンの 4 つのクリック応答方法の概要

ボタンは頻繁に使用されます。ここでは、イベント処理メソッドを整理し、実装方法が多数あることを発見しま...

Vue は better-scroll を使用して水平スクロール方法の例を実現します

1. スクロールの実装原理better-scroll のスクロール原理は、ブラウザのネイティブスクロ...

MySQL でストアド プロシージャを作成し、データ テーブルに新しいフィールドを追加する方法の分析

この記事では、例を使用して、MySQL でストアド プロシージャを作成し、データ テーブルに新しいフ...

Centos サーバーで nginx を設定する方法の例

セキュアターミナルMobaXterm_Personalをダウンロードまず、安全なターミナルをダウンロ...

HTMLはa要素hrefのURLリンクを自動的に更新したり新しいウィンドウを開いたりする機能を実装する

場合によっては、次のような機能を実装したいことがあります。リンクをクリックします。リンクがブラウザで...

知らないかもしれない奇妙で興味深いDockerコマンド

はじめに使えるかもしれないが、あまり使われていない、シンプルで実用的なDockerコマンドをいくつか...

HarborをベースにしたDocker専用倉庫の構築方法

目次1. ハーバーの紹介1. ハーバーが民間倉庫を建設3. 港湾の維持管理4. Harborユーザー...

MySQL 5.6 のインストール手順(画像とテキスト付き)

MySQL はオープンソースの小規模リレーショナル データベース管理システムです。現在、MySQL...

JavaScript WeakMap の使い方の詳しい説明

WeakMap オブジェクトは、キーが弱参照であるキー/値のペアのコレクションです。キーはオブジェク...