linux apacheサーバのインストール


Apacheサーバのインストールと導入
Apacheのサービスhttpクエリーとアンインストール
[root@es ~]# rpm -qa |grep httpd
[root@es ~]# rpm -e --nodeps httpd*
error: package httpd* is not installed
[root@es ~]# for name in `rpm -qa httpd*`;do rpm -e --nodeps $name;done

注:サーバがデフォルトでhttpをインストールしている場合、インストールをコンパイルする場合は、上記のコマンドを使用してhttpサーバを削除します.
rpm-qa|grep httpd#クエリーサーバにhttpdがインストールされているかどうか
rpm-e--nodeps httpd*#httpdのサービスをアンインストールしましたが、インストールされていません.errorが表示されます.
4行目コード:クエリーとアンインストールを1つにする
Apacheサービスhttpインストールパッケージと検証パッケージのダウンロードアドレス
本番環境では、ダウンロードしたインストールパッケージを検出し、変更されているかどうかを確認する必要があります.これは安全の常識です
wget http://www.eu.apache.org/dist/httpd/httpd-2.2.26.tar.gz.sha1
wget http://www.eu.apache.org/dist/httpd/httpd-2.2.26.tar.gz.md5
wget http://www.eu.apache.org/dist/httpd/httpd-2.2.26.tar.gz.asc
wget http://www.eu.apache.org/dist/httpd/httpd-2.2.26.tar.gz
wget http://www.apache.org/dist/httpd/KEY
httpインストールパッケージが変更されているかどうかを確認し、解凍します.
[root@Sersync tools]# tar xzvf httpd-2.2.26.tar.gz
[root@es tools]# cd httpd-2.2.26
[root@es tools]# gpg --import KEYS
[root@es tools]# gpg --verify httpd-2.2.26.tar.gz.asc
[[email protected]]#less README#プログラム情報の表示
[[email protected]]#less INSTALL#インストールコンパイルのパラメータを表示
コンパイルインストールApache
[root@apache httpd-2.2.26]# ./configure --prefix=/application/apache2.2.26 --enable-deflate --enable-expires --enable-headers  --enable-modules=most --with-mpm=worker --enable-rewite --enable-so --with-mpm=worker
[root@apache httpd-2.2.26]# make && make install

--prefix=/application/apache2.2.22#apacheインストールディレクトリの設定(デフォルト/usr/local/apache 2)
--enable-deflate#は伝送の符号化を圧縮する
--enable-expires#アクティブ化には、プロファイルによってhttpのexpiresとcache-controlヘッダコンテンツ、すなわちWebサイトのピクチャ、js、cssなどのコンテンツを制御し、クライアントブラウザでキャッシュする設定を提供する必要があります.
--enable-headers#httpリクエストヘッダを許可する制御を提供
--enable-modules=most   #
--enable-so#DSO(動的共有オブジェクト)の許可を指定
--with-mpm=worker#より多くのスレッドを使用して要求を出し、より多くの同時処理を処理します.(デフォルトpreforkプロセスモード)
--enable-rewrite#rewriteサポートを開きurlの静的化を実現し、開くことを提案する
詳細コマンドは./を表示できます.configure --help
apacheディレクトリをソフト接続して作成し、管理しやすい
[root@apache httpd-2.2.26]# ln -s/application/apache2.2.26/application/apache
[root@apache httpd-2.2.26]#/application/apache/bin/apachectl -l
[root@apache httpd-2.2.26]#/application/apache/bin/apachectl -M
:空白現実の後にロードできるパラメータ
-l:設置状況を確認する
M:現在の構成に基づいてロードされているすべてのモジュールをリストし、-lとは異なりmod_もリストします.soロード(ダイナミック共有オブジェクト)
[root@apache httpd-2.2.26]#/application/apache/bin/apachectl
以下ではSysV初期化タイプのオプションのみを説明し、その他のパラメータの説明はhttpdマニュアルページを参照してください.
start
Apacheの起動httpd
バックグラウンド・デーモンすでに起動している場合は、エラーが発生します.それはapachectl -k start
. stop
Apacheを止めるhttpd
バックグラウンド・デーモンそれはapachectl -k stop
. restart
Apacheを再起動httpd
バックグラウンド・デーモンデーモンプロセスがまだ実行されていない場合は、デーモンを起動します.このコマンドは、デーモンプロセスを再起動する前に使用します.configtest
Apacheが死なないようにプロファイルを自動的にチェックします.それはapachectl -k restart
. fullstatus
表示mod_status
提供される完全なステータスレポート.この機能を使用するには、サーバ上のmod_status
モジュールであり、システムにはテキストベースのブラウザがあります.lynx
.スクリプトのSTATUSURL
変数で、アクセスステータスレポートのURLを変更できます.status
簡単なステータスレポートを表示します.似ていますfullstatus
オプションですが、処理中のリクエストのリストは省略します.graceful
優雅にApacheを再起動httpd
バックグラウンド・デーモンデーモンがまだ起動していない場合は、デーモンを起動します.標準の再起動とは異なり、現在開いている接続が中断されず、ログがすぐに閉じることはありません.これは、ログスクロールスクリプトで使用する場合、ログを処理する前に、古いログファイルが処理される前に閉じられていることを確認するために、実際の遅延を追加する必要があります.このコマンドは、デーモンプロセスを再起動する前に使用します.configtest
Apacheが死なないようにプロファイルを自動的にチェックします.それはapachectl -k graceful
. graceful-stop
優雅にApacheを止めるhttpd
バックグラウンド・デーモン標準的な停止とは異なり、現在開いている接続が中断されず、ログがすぐに閉じることはありません.それはapachectl -k graceful-stop
. configtest
プロファイル構文チェックを1回実行します.プロファイルを解析し、レポートします.Syntax Ok
または、特定の構文エラーの詳細です.それはapachectl -t
.
以下のオプションは、以前のバージョンでのみ使用されていましたが、現在は廃棄されています.startssl
SSL対応で起動httpd
プロファイルを編集し、SSLサポートに関するコマンドを含めて使用します.apachectl start
サーバーを起動します.
[root@apache ~]#/application/apache/bin/apachectl -t
httpd: apr_sockaddr_info_get() failed for apache
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
Syntax OK
だからこの問題を解決するにはhttpdを設定することができます.confファイルのServer Nameは、次のとおりです.
  (1)ServerName localhost:80                        
または/etc/hostsに自分のホスト名apacheを入力します.以下のようにします.
  (2)127.0.0 apache
apacheサービスのステータス、プロセス番号、ポート番号の表示
[root@apache ~]# ps -ef|grep httpd|grep -v grep
root      1222     1  0 18:03 ?        00:00:00/application/apache2.2.26/bin/httpd -k start
daemon    1531  1222  0 18:38 ?        00:00:00/application/apache2.2.26/bin/httpd -k start
daemon    1532  1222  0 18:38 ?        00:00:00/application/apache2.2.26/bin/httpd -k start
daemon    1533  1222  0 18:38 ?        00:00:00/application/apache2.2.26/bin/httpd -k start
daemon    1534  1222  0 18:38 ?        00:00:00/application/apache2.2.26/bin/httpd -k start
daemon    1685  1222  0 18:38 ?        00:00:00/application/apache2.2.26/bin/httpd -k start
[root@apache ~]# netstat -tln |grep 80
tcp        0      0:::80                      :::*                        LISTEN
[root@apache ~]# lsof -i tcp:80
COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
httpd   1222   root    4u  IPv6  11323      0t0  TCP *:http (LISTEN)
httpd   1532 daemon    4u  IPv6  11323      0t0  TCP *:http (LISTEN)
httpd   1533 daemon    4u  IPv6  11323      0t0  TCP *:http (LISTEN)
httpd   1534 daemon    4u  IPv6  11323      0t0  TCP *:http (LISTEN)
httpd   1685 daemon    4u  IPv6  11323      0t0  TCP *:http (LISTEN)
ブラウザにテストを入力
ブラウザにapacheサーバを構成するipアドレスを入力します.たとえば、次のようにします.http://10.10.26.146
デフォルトではブラウザに表示されます
it's work
考え方の手引きを間違える
正常に表示されない場合は、以下のように構成します.
1.iptablesファイアウォールが閉じているか
2.selinuxを閉じるかどうか
3.80ポートが存在するかどうか
4.httpプロセスは存在するか
5.ローカルwgethttp://ipテスト
6.apacheのエラー・ログを表示し、特別な例外があるかどうかを確認します.