O R E P A S O:.htaccess

本文へジャンプ
S
M
L
Search by Google
menulavel
Valid CSS!
Spreadfirefox Affiliate Button
情報ボランティアの会(八王子)
anchor
リミッター解除編
.htaccess
○.htaccess ファイルをウェブから見えなくする
AddHandler cgi-script htaccess  ← CGIと思わせる
○アクセスを制御する
order allow,deny
一旦全てのアクセスを(禁止|許可)してから、個別の(禁止|許可)を書きます。
deny from all ← 禁止
allow from all ← 許可
例:iモード端末のみ許可
allow from 210.153.84.0/24
allow from 210.153.86.0/24
allow from 210.136.161.0/24
allow from 124.146.174.0/24
NTT docomo
例:禁止(ドメイン名又はIPアドレス)
deny from 210.153.84.0/24
deny from xxxx.com
○RewriteEngine on
RewriteEngine on ← RewriteEngineの使用を宣言
RewriteBase /hoge ← 飛び先でのベースURL
RewriteCond %{HTTP_HOST} domain [NC] ← HTTP_HOSTがdomainだったら実行(条件式 [オプション])
RewriteCond %{REQUEST_URI} !^/directory/.* ← REQUEST_URIが指定directoryでなかったら実行(ループ回避)
RewriteRule (.*) /指定directory/$1 [L] ← 変換式 [オプション]

例:
RewriteEngine on
RewriteCond %{HTTP_HOST} example2\.jp
RewriteRule (.*) index.php?virtualpath=example2/$1 [L,QSA]
RewriteCond %{HTTP_HOST} example3\.net
RewriteRule (.*) index.php?virtualpath=example3/$1 [L,QSA]
RewriteCond %{HTTP_HOST} "!^main\.example\.com$"
RewriteRule ^(.+) %{HTTP_HOST}$1 [C]
RewriteRule ^([^.]+).example.com(.*) /index.php?virtualpath=$1/$2 [QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?virtualpath=$1 [L,QSA]

[NC]:大文字小文字可
[QSA]:Query String Append(引数を付ける)
- [F]:Forbidden(アクセス禁止)
[L]:Rewrite機能の変換を打ち切る
[R=301]:ページが移動した
○DirectoryIndex index.html .ht
index.html ← アクセスをするファイル名。いくつ指定してもOK。
.ht ← 上記以外のアクセスを拒否
○クローラにページが移動したことを知らせる
redirect 301 /directory/ http://www.hoge.net/
/directory/ ← ディレクトリ名
http://www.hoge.net/ ← 移動先
○BASIC認証(Base64符号化)
AuthType Basic
AuthName "IDとPASSWORDを入力" ← 認証ダイアログに表示させる文字。
AuthUserFile /home/directory/.htpasswd ← IDとPasswordを書いたファイル。.htpasswdは一般的なので解りにくい名で。
AuthGroupFile /dev/null ← グループごとのアクセスを許可はなしと指定。
require valid-user ← IDとPasswordが正しければアクセス可能。
.htpasswdの例)
0000:BpZ8krslg8DT2
○ErrorDocumentで使用するエラーコード
401:Unauthorized…パスワード制限などで認証されなかった時。
403:Forbidden….htaccessやパーミッションの設定で弾かれた時。
404:Not Found…リクエストされたページが無い時。
500:Internal Server Error…CGIや.htaccessのエラーの時。
○AddType
AddType application/x-httpd-cgi .cgi
AddType application/x-httpd-php .php
AddType application/vnd.google-earth.kml+xml .kml
AddType video/3gpp .3gp
AddType video/mp4 .mp4

#でコメントアウト
←BACK | NEXT→