apache|mysql|コンパイル|ファイアウォール
目的: Redhat Linux 6.2 がファイアウォールとして使用され、チャイナネットへの専用回線接続、LAN セグメント 192.168.11.0/24 への内部接続、PHP4 と Mysql データベースを有効にする必要があり、LAN 上に別の Apache サーバー 192.168.11.2 があります。
、必須 外部ユーザーにサービスを提供するには、Apache リバース プロキシの機能を使用し、ファイアウォール上でコンパイルされた仮想ホストに名前を付けます。
アドレス: ファイアウォールの外部アドレスは a.b.c.210、エイリアスの 2 番目のアドレスは a.b.c. 211、内部ネットワーク カードのアドレスは 192.168.11.5、内部 LAN 上の Apache サーバーは 192.168.11.2 です
実装:
1. 3 つのソース ファイルをファイアウォール マシンの /tmp にダウンロードします
apache_1.3.12.tar .gz
mysql-3.22.32.tar. gz
php-4.0.1pl2.tar.gz
2. /tmp の下にある 3 つのファイルを解凍します
# tar xvfz apache*gz
# tar xvfz mysql*gz
# tar xvfz php*gz
3. /tmp/mysql* と入力し、mysql
#./configure --prefix=/usr/local/mysql
#make
#make install
#scripts/mysql_install_db
#/usr と入力します。 /local/mysql/bin/safe_mysqld &
#/usr/local/mysql/bin/mysqladm -u root パスワード newpassword
4. /tmp/php* を入力し、PHP4 をコンパイルします
#./configure --with-mysql - -with-apache=../ apche_1.3.12
—enable-track-vars
#make;make install
5. リバース プロキシ X-forward-for モジュールを
http://perl.apache.org でダウンロードします。 /guide/download.html#mod_proxy_add_forward
ダウンロード後、ファイル mod_proxy_add_forward.c を /tmp/apache_1.3.12/src/modules/
extra/ ディレクトリに配置します
5. Apache をコンパイルし、PHP4 モジュールとほとんどの共有モジュール ライブラリを追加します。
./configure - -prefix=/usr/local/apache
--activate-module=src/modules/php4/libphp4.a
--activate-module=src/modules/extra/mod_proxy_add_forward.c
--enable -module=most - -enable-shared=max
6. php.ini-dist を他のディレクトリにコピーします
# cd /tmp/php*
# cp php.ini-dist /usr/local/lib/php.ini
7. /usr/local/apache/conf/httpd.conf の AddType 行を編集します
AddType application/x-httpd-php4 .php
8. /usr/local/apache/conf/httpd の AddModule 行を編集します。 conf,
mod_proxy_add_forward を mod_proxy の前に置きます。
9. /usr/local/apache/conf/httpd.conf
NameVirtualHost 202.96.240.210
servername host.yourdomain.com
errorlog /var/log/httpd/shopu/error_log の末尾に次の行を追加します。
transferlog /var/log/httpd/shopu/access_log
rewriteengine on
rewriterule ^(/.*)$ http://192.168.11.2/$1 [P,L]
#rewritelog /var/log/httpd/shopu/ rewrite_log
#rewriteloglevel 9
proxyrequests off
rewritelog と rewriteloglevel の 2 行のコメントが解除されている場合、rewriterule
record
を見つけるのに役立ちます