Order指示子のdenyとallowをカンマで並べる時、間に空白を入れてはいけない。
Apache2.0の話です。
.htaccessで一時的に特定ディレクトリを完全に403 Forbiddenにしようと思って、
Order deny, allow deny from all
としたら、
[Sun Apr 13 11:41:34 2008] [alert] .../.htaccess: order takes one argument, \ 'allow,deny', 'deny,allow', or 'mutual-failure'
と怒られました。(つд⊂)
つまり"deny,"と"allow"の間のスペースとかは考慮されて無くて、"allow,deny"と"deny,allow"と"mutual-failure"という文字列をチェックしている。これも実はきっちりApacheのmanualに載っていて・・・
キーワードはコンマで分離することだけが可能です。 間に空白があってはいけません。どの場合でも、Allow と Deny 文は 全て評価されるということに注意してください。
mod_access - Apache HTTP サーバ
見落としがち。ということで、間の空白を削除したら無事403 Forbiddenになりました。