親ディレクトリに AllowOverride All が設定されている場合、AllowOverride None が有効になります。

親ディレクトリに AllowOverride All が設定されている場合、AllowOverride None が有効になります。

Apache 2.4 の構成は次のとおりです。

<Directory "/home/myuser/public_html">
    AllowOverride All
    Require all granted
</Directory>

<Directory "/home/myuser/public_html/uploads">
    AllowOverride None
    php_flag engine off
</Directory>

アップロード フォルダーは、ユーザーによってアップロードされたものです。誰かが .htaccess ファイルをアップロードして php_flag を変更する可能性を無効にしたいと考えています。

残念ながら、/home/myuser/public_html/uploads/subfolder に .htaccess ファイルを作成すると、php_flag を上書きできます。何らかの理由で、AllowOverride None が機能しません。

何か間違ったことをしているのでしょうか? この動作の原因は何でしょうか?

関連情報