繁体   English   中英

PHP:允许为用户上传.php文件,如何防止它们运行?

[英]PHP: allowing upload of .php files for users, how do I prevent them from running?

我允许人们上传他们的项目文件,我加强了我的安全性,但我只需要简单点。 如何停止执行他们上传的子目录中的任何文件?

我在想.htaccess但是我需要为每个新的子目录生成一个(我想),我是否需要废弃我当前的代码并使用.php文件发送标.php强制文件上的DL而不是运行?

您认为这是一个简单而安全的解决方案吗? 它只是上传到像uploads/~foo/bar.html这样的子目录,它看起来很漂亮,所以如果它能保持这样的格式会很好。

把它放在uploads/.htaccess

RemoveType application / x-httpd-php .php

这适用于所有子文件夹。 还要确保您不解析用户文件夹中的.htaccess。 这可以通过主服务器配置中的AllowOverride None来完成,也可以通过不允许首先上传.htaccess文件来完成。

例如,如果这些上传的文件位于目录“uploads”及其子目录中:

RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_URI} \.php [NC]
RewriteCond %{REQUEST_URI} \/uploads\/
RewriteRule ^(.*)$ index.php [F,L]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM