对于某些应用程序,用户能够上传他们自己文件。由于这可能是非常大的文件,因此允许他们通过自己的FTP客户端上传这些文件。
当然,我不希望他们上传一些PHP文件,这样他们就可以访问服务器上的所有其他文件。我想要防止这种行为的方法之一是拒绝访问特定的文件类型(如php、rb、py等)。仅在这些文件夹中。
我已经找到了拒绝访问文件夹、文件、文件夹中的文件的方法,但对文件夹中的文件类型却一无所知。
我试着把我发现的东西结合起来,比如:
<Files ~ "\.inc$">
Order allow,deny
Deny from all
</Files>
更改为
<Files uploads/ "\.inc$">
Order allow,deny
Deny from all
</Files>
或其他方式
RewriteRule ^(\.php) - [F,L,NC]
至
RewriteRule ^(uploads/\.php) - [F,L,NC]
但是,我找不到我应该使用什么语法。
因此,例如,我可以有以下(基本示例):
/index.php
/uploads/
hack.php
hack.rb
hack.py
pony.jpg
我希望hack.php/rb/py不可用,但其他所有内容都可用。我应该使用什么语法?
发布于 2013-04-20 00:25:23
您可以在upload
目录中放置一个.htaccess。然后,这些指令将仅应用于此目录和下面的目录。详情请参见How directives are applied。
因此,当具有FilesMatch
的.htaccess位于public
目录中时,它可以限制对匹配*.inc
、*.php
等的文件的访问
<FilesMatch "\.(?:inc|php|py|rb)$">
Order allow,deny
Deny from all
</FilesMatch>
https://stackoverflow.com/questions/16108399
复制相似问题