Apach
パッケージ名はhttpd
Apachのあの字も無い
インストール
yum install httpd
または
yum update httpd
でインストール完了
バージョン
現在以下のようになっている
とりあえず2.2で様子見かなぁ
2012/04/24現在 2.4.2 - 2012年4月17日 2.2.22 - 2012年1月31日 2.0.64 - 2010年10月19日
ポート
/etc/sysconfig/iptables
に
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 80 -j ACCEPT
と記述し
/etc/init.d/iptables restart
でおk
もしくわ
system-config-securitylevel
で設定してやっても問題なし
デフォルトならば80をあけていれば何でもおk
設定
/etc/httpd/conf/httpd.confを編集
待ちうけポートの変更
Listen 81
読み込みディレクトリの変更
DocumentRoot "/var/www/html/root_dir" <Directory "/var/www/html/root_dir">
と変更することでデフォルトで読み込まれるファイルが
/var/www/html/root_dir下のindex.htmlに変更される
Auth認証
設定ファイル
<Directory "/var/www/html/Auth"> #認証を要求するディレクトリ
AuthType Basic #認証方式
AuthName "Basic 認証" #認証名
AuthUserFile /etc/httpd/Auth/password #認証をするためのファイル
Require user user1 #認証を要求するユーザー名
</Directory>
認証ファイル作成
初回のみ "-c" オプションを必要とする
htpasswd -c /etc/httpd/Auth/password user1
でパスワードを入力すると/etc/httpd/Auth/user1というファイルができる
2回目以降は同じファイルに追加したい場合 "-c" オプションは必要ない
httpsの構築
結構面倒くさい
準備
1.OpenSSLのインストール
2.mod SSLのインストール
3.証明書をどうにかする
これらをまず行う必要がある
1.OpenSSL
http://www.openssl.org/source/
でパッケージをDL
tar zxvf openssl-0.9.8w.tar.gz cd openssl-0.9.8w ./config --prefix=/usr/local/openssl make make test make install
2.mod SSLのインストール
yum install mod_ssl
終了
3.証明書あれこれ
めんどうなのでやってない
4.ポート
443あける
リダイレクト
mod_rewrite有効化
インストールする
httpd.confを以下のように書き換える
#LoadModule rewrite_module modules/mod_rewrite.so ↓コメント外す LoadModule rewrite_module modules/mod_rewrite.so
httpd.conf最後に以下の分を書き加える
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteLog "logs/rewrite_log"
RewriteLogLevel 0
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/hogehoge/(.*)?$ https://%{HTTP_HOST}/hogehoge/$1 [L,R]
</IfModule>
RewriteEngine moduleのonf/off
RewriteLog logの出力先
RewriteLogLevel logレベル基本的に0
RewriteCond ここで設定した条件に当てはまった場合、以下のRuleでリダイレクトを行う
RewriteRule リダイレクトルール
設定例では
http://www.imymeminecraft.dip.jp/hogehoge/ というように、/hogehogeというディレクトリにアクセスがあった場合httpsにredirectする