#contents
** サーバー状態監視 [#bad885ac]
- [[Server Info:http://www.hmuna.com/server-info]]
- [[Server Status:http://www.hmuna.com/server-status]]
** インストール [#ycb53221]
- &ref(httpd.conf,center,/etc/gttpd/conf/httpd.conf); asof 2006-5-24
** SSL 証明書 [#p0080ead]
- &ref(ca.der);
*** 自動転送処理 (mod_rewrite) [#wbd1046d]
- [[mod_rewrite の説明サイト:http://japache.infoscience.co.jp/rewriteguide/]]
- http://www.hmuna.com (:80) へのアクセスを https://www.hmuna.com:9443 に自動転送させたい
- Apache 2.0 の DSO で mod_rewite が有効になっていることを確認

 LoadModule rewrite_module modules/mod_rewrite.so
- [Rewite Condition] と [Rewite Rule] を設定

 307 #-------------------------------------------------------------------------------------------
 308 #  http://www.hmuna.com アクセスを https://www.hmuna.com:9443 に転送する設定
 309 #-------------------------------------------------------------------------------------------
 310 <IfModule mod_rewite.c>
 311         RewriteEngine On
 312         RewriteLog "/var/log/httpd/rewrite_log"
 313         RewriteLogLevel 0
 314
 315         RewriteCond %{SERVER_NAME} ^http://www.hmuna.com.$ [NC]
 316         RewriteRule ^http://www.hmuna.com.$ https://www.hmuna.com:9443 [R,L]
 317 </IfModule>
 318
-- [NC] = 大文字小文字を区別しない
-- [R] = 302 Moved Temporaily"のレスポンスを返しクライアントをリダイレクトする
-- [L] = 条件にマッチした場合そこで判定を終了する(以下に続くRewriteRuleを評価しない)
-- [F] = マッチしたURLへのアクセスを禁止する(クライアントには"403 Forbidden"のレスポンスが返される)
*** .htaccess(ユーザー名によるアクセス制限の設定) [#v2c15fe8]
- .htaccess は 各ディレクトリに対し追加のディレクティブを設定させるファイルで、httpd.conf 内で設定する
- パスワードによるアクセス制御を行いたいディレクトリ内に新しく .htaccess を作成し必要なディレクティブを記述

| AuthType | 認証タイプの設定(ベーシック認証ならBasic、ダイジェスト認証ならDigest)|
| AuthName | パスワード入力の認証画面で表示される認証名|
| Require  | 認証を必要とするユーザを設定|
-- valid-userを設定するとパスワードファイルに含まれるすべてのユーザが許可される
-- 特定のユーザに限定したい場合は、スペース区切りでユーザ名を列挙する

 AuthType Basic
 AuthUserFile "/usr/local/apache2/conf/.htpasswd"
 AuthName "MemberCertification"
 Require valid-user
- この設定を有効にするには `AllowOverride` ディレクティブを有効にする必要がある

 AllowOverride AuthConfig 
- これで .htaccess 内のAuthType・AuthUserFile・AuthName・Require の設定値の上書きが許可される


*** IP ベースのアクセス制限 [#j77219da]
- IPアドレスによるアクセス制御は次の3つのディレクティブの組み合わせで設定

|Allow From|アクセスを許可するリスト記述|
|Deny From|アクセスを拒否するリスト記述|
|Order|Allow From」と「Deny From」の適用順位を設定。デフォルトでは「Deny From」を先に適用|
- 「Allow From」、「Deny From」のリスト部分は以下の形式で設定が可能

|記述方法| 記述例|詳細 |
|FQDN| www.itboost.co.jp| www.itboost.co.jpからのアクセスを制御|
|ドメイン|itboost.co.jp| itboost.co.jpドメインに属するホストからのアクセスを制御します。|
|IPアドレス|192.168.0.2|192.168.0.2からのアクセス制御|
|IPアドレスの一部|192.168|192.168で始まるIPアドレスからのアクセスを制御。 |
|ネットワーク|192.168.0.0/255.255.255.0|192.168.0のサブネットからのアクセスを制御|
|すべてのホスト| all| すべての端末からのアクセスを制御|
- 設定はスペース区切りで複数行うことが可能

 Allow  From  192.168.0.1  172.16
- すべてのアクセスを許可した上で、「192.168.0.2」からのアクセスを拒否したい場合は

 Allow  From  all
 Deny  From  192.168.0.2
 Order  Allow,deny
** 傷害解析 [#ib3d3635]
***  メインサーバーへのアクセスが出来ない [#g06d016b]
- /etc/httpd.conf の設定

 ServerName www.hmuna.com:80
 UseCanonicalName Off
 DocumentRoot "/var/www/html/htdocs"
 <Directory "/var/www/html/htdocs">

- UseCanonicalName ( DNS 別名検索 ) が無効になっている場合、ServerName には DNS で指定しているサーバー名を指定する必要がある
- 上記 httpd.conf の設定では、サーバーが見つけられず、次善策として apache は Virtual Server の一番目を取りに行っていた
- UseCanonicalName On にして問題が解決した
*** apxs が無いために PHP がインストールできない問題 [#i5b56639]
- backup.hmuna.com に FC5 + PHP5 + Pukiwiki を構築する際、PHP のインストールで問題が発生
- FC5 には最初から PHP が入っていたが、Apache 2.x との連係(httpd.conf の中での php module のロードと参照)が無かった
- FC5 のデフォルトインストールの PHP を一端削除し、PHP 本家から最新(PHP 5.1.8)の tarball をダウンロード
- ./configure で apxs (= APache eXtenSion tool ) の場所の指定が必要だが apxs が見つからない
- yum search で apxs を検索して httpd-devel.i386 を追加でインストール
- /usr/sbin/apxs がインストールされた ( Apache をソースからビルドした場合には =/usr/local/apache2/bin/apxs )

 [root@backup php-5.1.4]# locate apxs
 /var/www/manual/programs/apxs.html
 
 [root@backup php-5.1.4]# yum search paxs
 [root@backup php-5.1.4]# yum install httpd-devel.i386
 [root@backup php-5.1.4]# ls -l /usr/sbin/apxs
 -rwxr-xr-x 1 root root 21659  7月 27 00:11 /usr/sbin/apxs
- php インストールでは mysql-devel も追加でインストールした

 [root@backup php-5.1.4]# yum install mysql-devel
- php のビルド
 [root@backup php-5.1.4]# ./configure --with-apxs2=/usr/sbin/apxs --with-mysql
 [root@backup php-5.1.4]# make
 [root@backup php-5.1.4]# make install


*** 参考 URL [#e4c481c9]
- [[Apache project Help:http://httpd.apache.org/docs/2.0/ja/]]
- [[【連載 】0からのApache:http://www.stackasterisk.jp/tech/systemConstruction/apache01_01.jsp]]

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS