3

このフォルダに訪問者からの画像をアップロードする権限777のサブディレクトリ「images」があります。スクリプトの実行を防ぎ、セキュリティを強化するための.htaccessファイルがあります。

<Files ^(*.jpeg|*.jpg|*.JPEG|*.JPG|*.png|*.gif)>
    order deny,allow
    deny from all
</Files>

<FilesMatch "\.(php|pl|py|jsp|asp|htm|shtml|sh|cgi)$">
ForceType text/plain
</FilesMatch>

しかし、ブラウザでimages / page.phpをリクエストすると、動作しています。つまり、.htaccessが動作していません。このフォルダを実行可能ファイルから除外したい。

.htaccessファイルに間違いはありますか

4

2 に答える 2

2

ここでもう1つコメントします。スクリプトルールの大文字と小文字を区別しないチェックをお勧めします。次のようになります。

<FilesMatch "(?i)\.(php5|php4|php|php3|php2|phtml|pl|py|jsp|asp|htm|shtml|sh|cgi)$">
    ForceType text/plain
</FilesMatch>

これは私たちのサーバーではうまくいきます。

于 2015-02-20T05:39:31.537 に答える
0

もちろん、画像ファイルへのアクセスのみを禁止しているため、すべての.phpファイルにアクセスできます。また、最初の正規表現の最後に$があるはずだと思います。多分あなたはこのような何かを意味します:

<Files *>
    order deny,allow
    deny from all
</Files>

<Files ^(*.jpeg|*.jpg|*.JPEG|*.JPG|*.png|*.gif)$>
    order deny,allow
    allow from all
</Files>

<FilesMatch "\.(php|pl|py|jsp|asp|htm|shtml|sh|cgi)$">
    ForceType text/plain
</FilesMatch>
于 2012-11-05T08:56:17.320 に答える