Apache HTTP サームãƒãƒ¼ã‚¸ãƒ§ãƒ³ 2.2
Apache HTTP サーãƒã¯ç’°å¢ƒå¤‰æ•°ã¨å‘¼ã°ã‚Œã‚‹ã€åå‰ã®ã¤ã„ãŸ å¤‰æ•°ã«æƒ…å ±ã‚’è¨˜æ†¶ã™ã‚‹ä»•組ã¿ã‚’æä¾›ã—ã¦ã„ã¾ã™ã€‚ã“ã®æƒ…å ±ã¯ãƒã‚°åŽé›†ã‚„ アクセス制御ãªã©ã®ã„ã‚ã„ã‚ãªæ“作を制御ã™ã‚‹ãŸã‚ã«ä½¿ã†ã“ã¨ãŒã§ãã¾ã™ã€‚ ã“れらã®å¤‰æ•°ã¯ CGI スクリプトãªã©ã®å¤–部プãƒã‚°ãƒ©ãƒ ã¨é€šä¿¡ã™ã‚‹ãŸã‚ã«ã‚‚ 使ã‚れã¾ã™ã€‚ã“ã®æ–‡æ›¸ã¯ãれらã®å¤‰æ•°ã®æ“作方法ã¨ä½¿ç”¨æ–¹æ³•ã‚’ã„ãã¤ã‹ 紹介ã—ã¾ã™ã€‚
ã“れらã®å¤‰æ•°ã¯ç’°å¢ƒå¤‰æ•°ã¨å‘¼ã°ã‚Œã¦ã„ã¾ã™ãŒã€ã‚ªãƒšãƒ¬ãƒ¼ãƒ†ã‚£ãƒ³ã‚° システムã«ã‚ˆã£ã¦åˆ¶å¾¡ã•れã¦ã„る環境変数ã¨åŒã˜ã§ã¯ã‚りã¾ã›ã‚“。 実際ã¯ã€ã“れらã®å¤‰æ•°ã¯ Apache ã®å†…éƒ¨æ§‹é€ ã®ä¸ã«è¨˜æ†¶ã•ã‚Œã€æ“作ã•れã¦ã„ã¾ã™ã€‚ ãれらã¯ã€CGI ã‚„ SSI ã‚¹ã‚¯ãƒªãƒ—ãƒˆã«æ¸¡ã•れãŸã¨ãã ã‘ã€å®Ÿéš›ã® オペレーティングシステムã®ç’°å¢ƒå¤‰æ•°ã«ãªã‚Šã¾ã™ã€‚サーãƒè‡ªèº«ãŒ 実行ã•れã¦ã„るオペレーティングシステムã®ç’°å¢ƒã‚’æ“作ã—ãŸã„å ´åˆã¯ã€ オペレーティングシステムã®ã‚·ã‚§ãƒ«ãŒæä¾›ã—ã¦ã„る標準ã®ç’°å¢ƒå¤‰æ•°ã® æ“作方法を使ã‚ãªã‘れã°ãªã‚Šã¾ã›ã‚“。
関連モジュール | 関連ディレクティブ |
---|---|
Apache ã«ãŠã„ã¦ç’°å¢ƒå¤‰æ•°ã‚’è¨å®šã™ã‚‹ä¸€ç•ªåŸºæœ¬çš„ãªæ–¹æ³•ã¯ã€
ç„¡æ¡ä»¶ã«ç’°å¢ƒå¤‰æ•°ã‚’è¨å®šã™ã‚‹ SetEnv
ディレクティブを使用ã™ã‚‹ã“ã¨ã§ã™ã€‚
PassEnv
ディレクティブã«ã‚ˆã‚Šã€Apache ãŒèµ·å‹•ã•れãŸã‚·ã‚§ãƒ«ã®
環境変数を渡ã™ã“ã¨ã‚‚ã§ãã¾ã™ã€‚
より柔軟性を高ã‚ã‚‹ãŸã‚ã«ã€mod_setenvif
ã§æä¾›ã•れã¦ã„るディレクティブを使用ã™ã‚‹ã“ã¨ã§ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®
特性ã«åŸºã¥ã„ã¦ç’°å¢ƒå¤‰æ•°ã‚’è¨å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚例ãˆã°ã€ç‰¹å®šã®ãƒ–ラウザ
(User-Agent) ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚„特定㮠Referer [æ„図的ãªç¶´ã‚Šã§ã™]
(訳注: æ£ã—ã„綴り㯠referrer ã§ã™ãŒã€HTTP ã®ä»•様ã§ã¯ Referer
ã¨ãªã£ã¦ã„ã¾ã™) ヘッダãŒè¦‹ã¤ã‹ã£ãŸã¨ãã®ã¿å¤‰æ•°ã‚’è¨å®šã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
mod_rewrite ã® RewriteRule
ディレクティブã«ãŠã„ã¦ç’°å¢ƒå¤‰æ•°ã‚’è¨å®šã™ã‚‹ [E=...]
オプションを使用ã™ã‚‹ã“ã¨ã§ã€
より柔軟ãªè¨å®šã‚’行ãªã†ã“ã¨ãŒã§ãã¾ã™ã€‚
mod_unique_id ã¯ã€éžå¸¸ã«é™ã‚‰ã‚ŒãŸæ¡ä»¶ã®ä¸‹ã§
「ã™ã¹ã¦ã€ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«ã¤ã„ã¦ã€ä¸€æ„ã§ã‚ã‚‹ã“ã¨ãŒä¿è¨¼ã•れã¦ã„る値を環境変数
UNIQUE_ID
ã«è¨å®šã—ã¾ã™ã€‚
Apache ã®è¨å®šãƒ•ァイルã§è¨å®šã•れãŸç’°å¢ƒå¤‰æ•°ã¨ã‚·ã‚§ãƒ«ã‹ã‚‰æ¸¡ã•れる 環境変数ã«åŠ ãˆã¦ã€CGI スクリプト㨠SSI ページã«ã¯ CGI ã®ä»•様ã§è¦æ±‚ã•れã¦ã„る〠リクエストã®ãƒ¡ã‚¿æƒ…å ±ã‚’æŒã£ãŸç’°å¢ƒå¤‰æ•°ã®çµ„ãŒæä¾›ã•れã¾ã™ã€‚
suexec
ãŒä½¿ç”¨ã•れã¦ã„ã‚‹å ´åˆã€CGI スクリプトãŒèµ·å‹•ã™ã‚‹ãŸã‚ã«ã€ç’°å¢ƒå¤‰æ•°ã¯å®‰å…¨ãªç’°å¢ƒå¤‰æ•°ã®çµ„ã«æ•´ç†ã•れã¾ã™ã€‚
ã“ã®å®‰å…¨ãªç’°å¢ƒå¤‰æ•°ã®é›†åˆã¯ã€ã‚³ãƒ³ãƒ‘イル時㫠suexec.c
ã§å®šç¾©ã•れã¾ã™ã€‚関連モジュール | 関連ディレクティブ |
---|---|
環境変数ã®ä¸»ãªåˆ©ç”¨æ³•ã®ä¸€ã¤ã¯ã€CGI ã‚¹ã‚¯ãƒªãƒ—ãƒˆã«æƒ…å ±ã‚’ä¼ãˆã‚‹ã“ã¨ã§ã™ã€‚ 上ã§èª¬æ˜Žã•れã¦ã„るよã†ã«ã€CGI ã‚¹ã‚¯ãƒªãƒ—ãƒˆã«æ¸¡ã•れる環境変数㯠Apache ã®è¨å®šã«ã‚ˆã‚Šè¨å®šã•れる変数ã«åŠ ãˆã¦ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®æ¨™æº–ã®ãƒ¡ã‚¿æƒ…å ±ã‚’å«ã‚“ã§ã„ã¾ã™ã€‚ 詳細㯠CGI ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ« ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
mod_include ã® INCLUDES
フィルタã§å‡¦ç†ã•れる
server-parsed (SSI) ドã‚ュメントã§ã¯ã€echo
è¦ç´ を使用ã™ã‚‹ã¨ç’°å¢ƒå¤‰æ•°ãŒå‡ºåŠ›ã•れã¾ã™ã€‚
ã¾ãŸã€ãƒšãƒ¼ã‚¸ã®ã‚る部分ãŒãƒªã‚¯ã‚¨ã‚¹ãƒˆã®æ€§è³ªã«å¿œã˜ã¦å¤‰æ›´ã•れるよã†ã«ã€
環境変数をフãƒãƒ¼åˆ¶å¾¡è¦ç´ ã§ä½¿ã†ã“ã¨ãŒã§ãã¾ã™ã€‚詳細ã¯
SSI ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ« ã‚’å‚ç…§ã—ã¦ãã ã•ã„。
allow from env=
ディレクティブ㨠deny from env=
ディレクティブを使用ã—ã¦ã€ã‚µãƒ¼ãƒã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’環境変数ã®å€¤ã§åˆ¶å¾¡ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
SetEnvIf
ディレクティブã¨çµ„ã¿åˆã‚ã›ã‚‹ã“ã¨ã§ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®ç‰¹æ€§ã«åŸºã¥ã„ã¦
サーãƒã¸ã®ã‚¢ã‚¯ã‚»ã‚¹åˆ¶å¾¡ã‚’柔軟ã«è¡Œãªã†ã“ã¨ãŒã§ãるよã†ã«ãªã‚Šã¾ã™ã€‚
ãŸã¨ãˆã°ã€ã“れらã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–を使用ã—ã¦ã€ç‰¹å®šã®ãƒ–ラウザ (User-Agent)
ã‹ã‚‰ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’æ‹’å¦ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
LogFormat
ディレクティブã®ã‚ªãƒ—ション %e
を使用ã™ã‚‹ã“ã¨ã§ã€ç’°å¢ƒå¤‰æ•°ã‚’アクセスãƒã‚°ã«è¨˜éŒ²ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚ã•らã«ã€
CustomLog
ãƒ‡ã‚£ãƒ¬ã‚¯ãƒ†ã‚£ãƒ–ã®æ¡ä»¶åˆ†å²å¼ã‚’使用ã™ã‚‹ã“ã¨ã§ã€
環境変数ã®å€¤ã«ã‚ˆã£ã¦ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ãƒã‚°ã«è¨˜éŒ²ã™ã‚‹ã‹ã©ã†ã‹ã‚’決ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
SetEnvIf
ディレクティブã¨çµ„ã¿åˆã‚ã›ã‚‹ã“ã¨ã§ã€
ã©ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã‚’ãƒã‚°ã«è¨˜éŒ²ã™ã‚‹ã‹ã‚’柔軟ã«åˆ¶å¾¡ã™ã‚‹ã“ã¨ãŒå¯èƒ½ã«ãªã‚Šã¾ã™ã€‚ãŸã¨ãˆã°ã€
gif
ã§çµ‚ã‚るファイルåã¸ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã¯ãƒã‚°ã«è¨˜éŒ²ã—ãªã„ã€
é•ã†ã‚µãƒ–ãƒãƒƒãƒˆã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‹ã‚‰ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã ã‘ã‚’ãƒã‚°ã«è¨˜éŒ²ã™ã‚‹ã€
ã¨ã„ã†é¸æŠžãŒå¯èƒ½ã§ã™ã€‚
Header
ディレクティブã¯ç’°å¢ƒå¤‰æ•°ã®å˜åœ¨ã‚„ä¸åœ¨ã«ã‚ˆã£ã¦ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¸ã®å¿œç”ã«ç‰¹å®šã®
HTTP ヘッダを付ã‘ã‚‹ã‹ã©ã†ã‹ã‚’決ã‚ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
ã“れã«ã‚ˆã‚Šã€ãŸã¨ãˆã°ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‹ã‚‰ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆ
ã«ã‚るヘッダãŒã‚ã‚‹å ´åˆã«ã®ã¿ç‰¹å®šã®å¿œç”ヘッダをé€ã‚‹ã€ã¨ã„ã†ã‚ˆã†ãªã“ã¨ãŒ
ã§ãã¾ã™ã€‚
ExtFilterDefine
ディレクティブを使用ã—ã¦
mod_ext_filter
ã§è¨å®šã•れる外部フィルタã¯ã€
disableenv=
㨠enableenv=
オプションを使ã£ã¦ã€ç’°å¢ƒå¤‰æ•°ã«ã‚ˆã‚‹æ¡ä»¶ä»˜ãé©ç”¨ãŒã§ãã¾ã™ã€‚
RewriteCond
ディレクティブã§è©•価文å—列ã¨ã—ã¦
%{ENV:...}
å¼ã‚’指定ã™ã‚‹ã“ã¨ã§ã€mod_rewrite
ã®æ›¸ãæ›ãˆã‚¨ãƒ³ã‚¸ãƒ³ãŒç’°å¢ƒå¤‰æ•°ã«åŸºã„ã¦æ¡ä»¶åˆ†å²ã‚’行ãªã†ã“ã¨ãŒã§ãã¾ã™ã€‚
mod_rewrite ãŒä½¿ç”¨å¯èƒ½ãªå¤‰æ•°ã§ ENV:
ãŒå‰ã«ã¤ã„ã¦ã„ãªã„変数ã¯ã€
実際ã¯ç’°å¢ƒå¤‰æ•°ã§ã¯ãªã„ã¨ã„ã†ã“ã¨ã«æ³¨æ„ã—ã¦ãã ã•ã„。
ãれらã¯ä»–ã®ãƒ¢ã‚¸ãƒ¥ãƒ¼ãƒ«ã‹ã‚‰ã¯ä½¿ç”¨ã§ããªã„ mod_rewrite 用ã®ç‰¹åˆ¥ãªå¤‰æ•°ã§ã™ã€‚
äº’æ›æ€§ã®å•題を解決ã™ã‚‹ãŸã‚ã«ã€ç‰¹å®šã®ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨é€šä¿¡ã—ã¦ã„ã‚‹ã¨ãã¯
Apache ã®å‹•作を変更ã§ãる機構ãŒå°Žå…¥ã•れã¾ã—ãŸã€‚ã§ãã‚‹ã ã‘æŸ”軟ã«ã™ã‚‹ãŸã‚ã«ã€
ã“ã‚Œã‚‰ã®æ©Ÿæ§‹ã¯ç’°å¢ƒå¤‰æ•°ã‚’定義ã™ã‚‹ã“ã¨ã§å‘¼ã³å‡ºã•れã¾ã™ã€‚普通ã¯ã€
BrowserMatch
ディレクティブを使ã„ã¾ã™ãŒã€ãŸã¨ãˆã° SetEnv
ディレクティブや PassEnv
ディレクティブも使用ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
ã“れを指定ã™ã‚‹ã“ã¨ã§ã€ãƒªã‚¯ã‚¨ã‚¹ãƒˆãŒ HTTP/1.0 より新ã—ã„プãƒãƒˆã‚³ãƒ«ã®å ´åˆã§ã‚‚ã€HTTP/1.0 ã¨ã—ã¦æ‰±ã‚れã¾ã™ã€‚
DEFLATE
フィルタãŒä½¿ç”¨ã™ã‚‹ã‚ˆã†ã«è¨å®šã•れã¦ã„ã‚‹ã¨ãã«ã€
ã“ã®ç’°å¢ƒå¤‰æ•°ã¯ãƒ–ラウザ㮠accept-encoding ã®è¨å®šã‚’無視ã—ã¦å¸¸ã«
圧縮ã•れãŸå‡ºåŠ›ã‚’é€ã‚‹ã‚ˆã†ã«ã—ã¾ã™ã€‚
応ç”ヘッダãŒã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«é€ã‚‰ã‚Œã‚‹å‰ã« Vary
フィールドをå–り除ãã¾ã™ã€‚
クライアントã®ä¸ã«ã¯ã“ã®ãƒ•ィールドをæ£ã—ã解釈ã—ãªã„ã‚‚ã®ãŒã‚りã¾ã™ã€‚
ã“ã®å¤‰æ•°ã‚’è¨å®šã™ã‚‹ã“ã¨ã§ãã®å•題を回é¿ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚
ã“ã®å¤‰æ•°ã‚’è¨å®šã™ã‚‹ã¨ã€force-response-1.0
ãŒè¨å®šã•れãŸã“ã¨ã«ãªã‚Šã¾ã™ã€‚
ã“れãŒè¨å®šã•れã¦ã„ã‚‹ã¨ã€HTTP/1.0 リクエストを発行ã™ã‚‹ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã«å¯¾ã—ã¦ã¯ 常㫠HTTP/1.0 ã§å¿œç”ã™ã‚‹ã‚ˆã†ã«ãªã‚Šã¾ã™ã€‚ã“ã®æ©Ÿèƒ½ã¯ã€ 元々㯠AOL ã®ãƒ—ãƒã‚ã‚·ã®å•題ã®ãŸã‚ã«å®Ÿè£…ã•れã¾ã—ãŸã€‚HTTP/1.0 クライアントã®ä¸ã«ã¯ã€ HTTP/1.1 ã®å¿œç”ã‚’è¿”ã•ã‚Œã‚‹ã¨æ£ã—ã動作ã—ãªã„ã‚‚ã®ãŒã‚ã‚‹ã‹ã‚‚ã—れã¾ã›ã‚“。 ã“ã®æ©Ÿèƒ½ã‚’使用ã™ã‚‹ã“ã¨ã§ã€ãã®ã‚ˆã†ãªã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¨ã®é–“ã®äº’æ›æ€§å•題を解決ã§ãã¾ã™ã€‚
ã“れ㌠1 ã«è¨å®šã•れるã¨ã€ã“ã®å¤‰æ•°ã¯ text/html
以外ã®ã‚³ãƒ³ãƒ†ãƒ³ãƒˆã‚¿ã‚¤ãƒ—ã«å¯¾ã™ã‚‹ã€mod_deflate
æä¾›ã® DEFLATE
出力フィルタを無効ã«ã—ã¾ã™ã€‚
ã¾ãŸã€é™çš„ã«ã€æ—¢ã«åœ§ç¸®ã•れãŸãƒ•ァイルを使用ã—ãŸã„å ´åˆã€
(gzip ã ã‘ã§ãªãã€"identity" ã¨ç•°ãªã‚‹å…¨ã¦ã®ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã«å¯¾ã—ã¦)
mod_negotiation
も変数を評価ã—ã¾ã™ã€‚
セットã•れるã¨ã€mod_deflate
ã®
DEFLATE
フィルタãŒã‚ªãƒ•ã«ãªã‚Šã¾ã™ã€‚
ãã—㦠mod_negotiation
ã¯ã‚¨ãƒ³ã‚³ãƒ¼ãƒ‰ã•れãŸãƒªã‚½ãƒ¼ã‚¹ã‚’é€ã‚‰ãªã„よã†ã«ã—ã¾ã™ã€‚
ã“れãŒè¨å®šã•れã¦ã„ã‚‹å ´åˆã¯ã€KeepAlive
を使用ã—ãªã„よã†ã«ã—ã¾ã™ã€‚
mod_negotiation
ã®æŒ™å‹•ã«å½±éŸ¿ã‚’与ãˆã¾ã™ã€‚
(en
, ja
, x-klingon
ã¨ã„ã£ãŸ)
è¨€èªžã‚¿ã‚°ãŒæ ¼ç´ã•れã¦ã„れã°ã€ãã®è¨€èªžã® variant ã‚’é€ä¿¡ã—よã†ã¨ã—ã¾ã™ã€‚
ãã®ã‚ˆã†ãª variant ãŒãªã„å ´åˆã¯ã€
通常ã®ãƒã‚´ã‚·ã‚¨ãƒ¼ã‚·ãƒ§ãƒ³å‡¦ç†ãŒ
é©ç”¨ã•れã¾ã™ã€‚
ã“れã¯ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¸ã®ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã®é€ä¿¡ã‚’サーãƒãŒã‚ˆã‚Šæ³¨æ„æ·±ã 行ãªã†ã‚ˆã†ã«ã—ã¾ã™ã€‚ ã“れã¯é€šå¸¸ã€ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã«éš›ã—ã¦ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã« å•題ãŒã‚ã‚‹ã“ã¨ãŒåˆ†ã‹ã£ã¦ã„ã‚‹å ´åˆã«ä½¿ã‚れã¾ã™ã€‚ã“ã®æ©Ÿèƒ½ã¯å…ƒã€…㯠マイクãƒã‚½ãƒ•トã®ã‚¦ã‚§ãƒ–フォルダã®ã‚½ãƒ•ト㌠DAV メソッドã«ã‚ˆã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒªã‚½ãƒ¼ã‚¹ã¸ã®ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã®æ‰±ã„ã« å•題ãŒã‚Šã€ãれを回é¿ã™ã‚‹ãŸã‚ã«å®Ÿè£…ã•れã¾ã—ãŸã€‚
Apache 2.2 以é™ã§åˆ©ç”¨å¯èƒ½
クライアントã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã«å¯¾ã™ã‚‹å¿œç”ã¨ã—ã¦ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã‚’é€ä¿¡ã™ã‚‹éš›ã€ レスãƒãƒ³ã‚¹ã«ã¯ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãŒè‡ªå‹•çš„ã«è¡Œãªãˆãªã„ (行ãªã‚れãªã„) å ´åˆã«è¡¨ç¤ºã™ã‚‹ãƒ†ã‚ストãŒå«ã¾ã‚Œã¾ã™ã€‚ 通常ã€ã“ã®ãƒ†ã‚ストã«åˆè‡´ã—ãŸã‚ャラクタセットã€ISO-8859-1 ã§ãƒ©ãƒ™ãƒ«ä»˜ã‘ã‚’ã—ã¾ã™ã€‚
ã—ã‹ã—ã€ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆå…ˆãŒåˆ¥ã®æ–‡å—セットを使ã£ã¦ã„ã‚‹å ´åˆã€ ã‚ã‚‹å•題ã®ã‚るブラウザã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã§ã¯ã€ リダイレクト先ã®å®Ÿéš›ã®æ–‡å—セットã®ä»£ã‚りã«ã€ ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆå…ƒã®æ–‡å—セットを使ã£ã¦ã—ã¾ã†ã“ã¨ãŒã‚りã¾ã™ã€‚ ãã®çµæžœã€ä¾‹ãˆã°å¤‰ãªæç”»ãŒè¡Œãªã‚れãŸã‚Šã—ã¦ã€èªã‚ãªããªã£ãŸã‚Šã—ã¾ã™ã€‚
ã“ã®ç’°å¢ƒå¤‰æ•°ã‚’è¨å®šã™ã‚‹ã“ã¨ã§ã€ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ã‚·ãƒ§ãƒ³ãƒ†ã‚ストã«å¯¾ã™ã‚‹ ã‚ãƒ£ãƒ©ã‚¯ã‚¿ã‚»ãƒƒãƒˆã®æŒ‡å®šã‚’除去ã—ã¾ã™ã®ã§ã€ãれらå•題ã®ã‚るブラウザã§ã‚‚ ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆå…ˆã®æ–‡å—セットをæ£ã—ã使ã†ã‚ˆã†ã«ã§ãã¾ã™ã€‚
ã“ã‚Œã‚‰ã®æŒ‡ç¤ºå㯠mod_proxy
ã®æŒ™å‹•を変更ã—ã¾ã™ã€‚
詳細㯠mod_proxy
ã®ãƒ‰ã‚ュメントをã”å‚ç…§ãã ã•ã„。
クライアントã«é–¢ã™ã‚‹æ—¢çŸ¥ã®å•題ã«å¯¾å‡¦ã™ã‚‹ãŸã‚ã«ã€ä»¥ä¸‹ã®è¡Œã‚’ httpd.conf ã«å…¥ã‚Œã‚‹ã“ã¨ã‚’推奨ã—ã¦ã„ã¾ã™ã€‚
å¤ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® Apache ã§ã¯ã€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã®å•題ã«å¯¾å¿œã™ã‚‹ãŸã‚ã« httpd.conf ã«æ¬¡ã®è¡Œã‚’åŠ ãˆã‚‹ã‚ˆã†æŽ¨å¥¨ã•れã¦ã„ã¾ã—ãŸãŒã€ 今ã¨ãªã£ã¦ã¯ã€å•題ã¨ã—ã¦ã„ãŸã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã¯å®Ÿéš›ã«ã¯è¦‹ã‹ã‘ã‚‹ã“ã¨ã¯ ãªããªã£ã¦ããŸã®ã§ã€ã“ã®è¨å®šã¯ã‚‚ã¯ã‚„å¿…è¦ãªã„ã‹ã‚‚ã—れã¾ã›ã‚“。
# # The following directives modify normal HTTP response behavior. # The first directive disables keepalive for Netscape 2.x and browsers that # spoof it. There are known problems with these browser implementations. # The second directive is for Microsoft Internet Explorer 4.0b2 # which has a broken HTTP/1.1 implementation and does not properly # support keepalive when it is used on 301 or 302 (redirect) responses. # BrowserMatch "Mozilla/2" nokeepalive BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 # # The following directive disables HTTP/1.1 responses to browsers which # are in violation of the HTTP/1.0 spec by not being able to grok a # basic 1.1 response. # BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0
ã“ã®ä¾‹ã§ã¯ã€ç”»åƒã¸ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆãŒã‚¢ã‚¯ã‚»ã‚¹ãƒã‚°ã«ç¾ã‚Œãªã„よã†ã«ã—ã¾ã™ã€‚ ã“れを変更ã™ã‚‹ã“ã¨ã§ã€ç‰¹å®šã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®ãƒã‚°åŽé›†ã‚’ã‚„ã‚ãŸã‚Šã€ 特定ã®ãƒ›ã‚¹ãƒˆã‹ã‚‰ã®ãƒªã‚¯ã‚¨ã‚¹ãƒˆã®ãƒã‚°åŽé›†ã‚’ã‚„ã‚ãŸã‚Šã™ã‚‹ã“ã¨ãŒç°¡å˜ã«ã§ãã¾ã™ã€‚
SetEnvIf Request_URI \.gif image-request SetEnvIf Request_URI \.jpg image-request SetEnvIf Request_URI \.png image-request CustomLog logs/access_log common env=!image-request
ã“ã®ä¾‹ã¯ã€åˆ¥ã®ã‚µãƒ¼ãƒã«ã„る人ãŒã€ã‚ãªãŸã®ã‚µãƒ¼ãƒã«ã‚ã‚‹ç”»åƒã‚’
inline ç”»åƒã¨ã—ã¦ä½¿ç”¨ã™ã‚‹ã“ã¨ã‚’防ãŽã¾ã™ã€‚
ã“ã‚Œã¯æŽ¨å¥¨ã•れã¦ã„ã‚‹è¨å®šã§ã¯ã‚りã¾ã›ã‚“ãŒã€ã‚ã‚‹é™å®šã•れãŸçжæ³ã§ã¯æœ‰åйã§ã™ã€‚
ã“ã“ã§ã¯ã€ã™ã¹ã¦ã®ç”»åƒã¯ /web/images
ã¨ã„ã†ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«ã‚ã‚‹ã¨ä»®å®šã—ã¾ã™ã€‚
SetEnvIf Referer "^http://www.example.com/" local_referal # Allow browsers that do not send Referer info SetEnvIf Referer "^$" local_referal <Directory /web/images> Order Deny,Allow Deny from all Allow from env=local_referal </Directory>
ã“ã®æ‰‹æ³•ã«é–¢ã™ã‚‹è©³ã—ã„æƒ…å ±ã¯ ApacheToday ã®ãƒãƒ¥ãƒ¼ãƒˆãƒªã‚¢ãƒ«ã€ŒKeeping Your Images from Adorning Other Sites ã€ã‚’å‚ç…§ã—ã¦ãã ã•ã„。