(1) インストールパッケージを/home/proxy/temp/にダウンロードし、解凍します。
apr、apr-util ダウンロード アドレス http://archive.apache.org/dist/apr、http://www.apache.org/dist/apr/
pcre ダウンロード アドレス ftp://ftp.csx.cam.ac。 uk/pub/software/programming/pcre/、http://ftp.pcre.org/pub/pcre/
httpd ダウンロード アドレス https://archive.apache.org/dist/httpd/、http://www.apache .org/dist/httpd/
mod_wl_24.so ダウンロード アドレス https://www.oracle.com/technetwork/middleware/webtier/downloads/index-jsp-156711.html
tar -zxvf apr-1.4.6.tar.gz
tar -zxvf apr-util-1.5.2.tar.gz
tar -zxvf pcre-8.38.tar.gz
tar -zxvf httpd-2.2.29.tar.gz
(そうでない場合は、gcc、gcc-c++、expat-devel、penssl- devel)
yum をインストールします -y gcc をインストールします
yum -y をインストールします gcc-c++ をインストールします
yum をインストールします expat-devel
yum -y をインストールします mod_ssl openssl-devel をインストールします
(2) aprのコンパイルとインストール
cd apr-1.4.6
./configure --prefix=/home/app/deploy/apr/ #インストールの名前は /home/app/deploy の下に apr となります
make
make install
(3) apr-util をコンパイルしてインストールします。
cd apr-util-1.5.2
./configure --prefix=/home/app/deploy/apr-util --with-apr=/home/app/deploy/apr
make
make install
(4) pcreのコンパイルとインストール
cd pcre-8.38
./configure --prefix=/home/app/deploy/pcre
make
make install
これまでのところ、依存関係は基本的に解決されています。
(5) httpd-2.2.15をコンパイルしてインストールします。
cd httpd-2.2.15
./configure --prefix=/home/app/deploy/apache --sysconfdir=/home/app/deploy/apache/conf --enable-so --enable-reirte --enable-ssl --enable-cgi --enable-cgid --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all --with-apr=/home/app/deploy/apr - -with-apr-util=/home/app/deploy/apr-util
make
make install
注: 問題がある場合は、Apache のバージョンごとに違いがあります (./configure --prefix=/home/app/deploy/ apache --sysconfdir =/home/app/deploy/apache/conf --enable-so --enable-revirte --enable-ssl --enable-cgi --enable-cgid --enable-modules=most --enable -mods-shared =most --enable-mpms-shared=all --with-apr=/home/app/deploy/apr --with-apr-util=/home/app/deploy/apr-util --with -pcre=/ home/app/deploy/pcre)
説明:
--enable-so: 動的共有モジュールをサポートします。PHP をサポートする場合、Apache では動作しません。持つ必要があります
--enable-ssl: ssl 機能を有効にします。有効にしない場合、https を使用できません
--enable-mpms-shared=all: プリフォーク、ワーカー、イベント
--with-mpm=event: イベントがデフォルトです
- -enable-rewrite: URL 書き換えをサポート
--enable-cgi: CGI をサポート
--enable-cgid: httpd はイベントまたはワーカーを使用してスレッド アクセスを有効にします
--enable-modules=most: ほとんどのモジュールを有効にします
--enable-mods-shared= most: ほとんどの共有モジュールを有効にします
(6) サービスの開始と停止
start
/home/app/deploy/apache/bin/httpd -k start -f /home/app/deploy/apache/conf/httpd.conf
stop
/home/app/deploy/apache/bin/httpd -k stop -f /home/app/deploy/apache/conf/httpd.conf
(7) 別途オプションモジュールをインストールする
1. まず、Apache ソース コードのプロキシ ディレクトリを見つけます。
# cd /home/proxy/temp/httpd-2.2.15
# cd modules/proxy
2. 対応するモジュールをコンパイルします。
ここで、「/home/app/deploy/apache」は以前の Apache インストール マニュアル
# /home/app/deploy/apache/bin/apxs -c -i mod_proxy.c proxy_util.c
ロードモジュール:
# /home/app/deploy/apache/bin/apxs -i -a -n proxy mod_proxy.la
このようにして、プロキシが正常にインストールされ、次のステートメントが httpd.conf に自動的に追加されることがわかります。
LoadModule proxy_module modules/mod_proxy.so
module 対応する mod_proxy.so モジュールもモジュール フォルダーに生成されます。
ただし、proxy はあくまでもコアモジュールであり、特別に使用する場合は対応するモジュールを追加する必要があり、方法も同様です。
たとえば、作成者は ProxyPass、ProxyPassReverse を使用したいと考えていますが、
その場合は http が必要になるため、コンパイルを続けて次のモジュールを追加します。
# /home/app/deploy/apache/bin/apxs -c mod_proxy_http.c
# /home/app/deploy/apache/bin/apxs -i -a -n proxy_http mod_proxy_http.la
(8) リバースプロキシ構成
NameVirtualHost *:8080
<VirtualHost *:8080>
ServerAdmin *****@***.com
DocumentRoot /home/apache/docs/
SSLCertificateFile "/home/apache/crt/server.crt"
SSLCertificateKeyFile "/home/apache/ crt/server.key"
ErrorLog /home/apache/logs/http-error.log
CustomLog /home/apache/logs/http.log common
<Directory "/home/apache/docs/">
オプション FollowSymLinks
AllowOverride All
Order 許可、すべての </Directory>
から許可を拒否 SSLEngine オン SSLProxyEngine オン ProxyRequests オフ ProxyPreserveHost オン#https转http
ProxyPass /app/ http://*.*.*.*:8080/app/
ProxyPassReverse /app/ http://*.*.*.*:8080/app/
#https转https
ProxyPass /app/ https: //*.*.*.*:8080/app/
ProxyPassReverse /app/ https://*.*.*.*:8080/app/
</VirtualHost>
(9) フォワードプロキシ設定
NameVirtualHost *:8080
<VirtualHost *:8080>
ServerAdmin *****@***.com
ServerName netconnectapp
DocumentRoot /home/apache/docs/
ServerAlias testapp
ErrorLog /home/apache/logs/http-error.log
CustomLog /home /apache/logs/http.log common
<Directory "/home/apache/docs/">
オプション FollowSymLinks
AllowOverride All
Order allowed,deny
すべてから許可
</Directory>
#フォワード プロキシ設定
ProxyRequests On
ProxyVia On
Timeout 30
KeepAlive On
MaxKeepAliveRequests 500
KeepAliveTimeout
30AllowCONNECT 443 563 5000 80
<Proxy *>
Order Deny,Allow
すべてから拒否
すべてから許可
</Proxy>
</VirtualHost>