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のフロントエンドとバックエンドの分離によるノートウォールの実現

推薦する

Mysql の使用法の概要

導入EXISTS は、サブクエリが少なくとも 1 行のデータを返すかどうかを確認するために使用されま...

仮想マシンの複製に関するVirtual Boxチュートリアル図

VMに慣れた後、BOXに切り替えるのは少し異なります。たとえば、コピーネットワークカードを2枚使って...

Ubuntu システムログで /var/log/messages を設定する方法

1. 問題の説明今日、システム ログ ファイルを確認する必要がありますが、/var/log/mess...

Vue の基本 MVVM、テンプレート構文、データバインディング

目次1. Vueの概要Vue公式サイトMVVM アーキテクチャ パターンVue の紹介2. Vueを...

CentOS 7.4 にソースコードから MySQL 8.0 をインストールするための詳細なチュートリアル

目次1. 環境2. 準備3. MySQL 8.0.11をインストールするMySQL 8 の公式バージ...

JSはプログレスバーをドラッグして要素の透明度を変更することを実装しています

今日ご紹介したいのは、ネイティブ JS を使用してプログレス バーをドラッグし、要素の透明度を変更す...

GTK ツリービューの原理と使用法の分析

GtkTreeView コンポーネントは、美しい通常のリストやツリーのようなリストを作成できる高度な...

CSS ボックスを中央揃えするためのよく使われるいくつかの方法 (要約)

最初のもの: CSSの位置プロパティの使用 <スタイル タイプ="text/css&...

js は丸で囲まれた数字のリストのサンプルコードを動的に追加します

1. まず本文にulタグを追加します <!-- 順序なしリスト --> <ul i...

HTML インライン要素と HTML ブロックレベル要素の概要と違い

ブロックレベル要素の機能: • 常に新しい行から始まり、それ自体で 1 行を占め、後続の要素も新しい...

APPログインインターフェースシミュレーション要求を実装するためのPostmanデータ暗号化と復号化

目次主に使用されるPostmanの機能データの暗号化と復号化さまざまなパラメータ設定実際に送信された...

数十行のjsを使用してクールなキャンバスインタラクティブ効果を実現する方法を教えます

目次1. 円を描く2. マウスで動かした円3. マウスでドラッグした粒子4. カラーグラデーション粒...

フロントエンドのパフォーマンス最適化を学ぶ準備として、HTMLページのレンダリングプロセスを理解する

現在、フロントエンドのパフォーマンス最適化について学んでいます。適切な解決策を見つけ、パフォーマンス...

CentOS 6.9 で glibc ダイナミック ライブラリをアップグレードする詳細なプロセス

glibc は、gnu によってリリースされた libc ライブラリ、つまり c ランタイム ライブ...

HTML における src と href の違いについての簡単な説明

簡単に言うと、srcは「このリソースをロードしたい」という意味で、hrefは「このリソースに関連付け...