Php 阻止web可执行文件类型在特定目录中运行?

Php 阻止web可执行文件类型在特定目录中运行?,php,apache,Php,Apache,我有一个上传脚本,可以将所有用户提交的文件上传到一个目录,我想让该目录像普通目录一样显示图片/音频/视频,但以编程方式将任何“可执行”文件类型(.php、.js、.cgi、.html等)作为纯/文本或应用程序/八位字节流 目前,我的.htaccess中有以下内容: Options -MultiViews +FollowSymLinks -Indexes -ExecCGI php_flag engine off RemoveHandler .cgi .pl .py .php4 .pcgi4 .ph

我有一个上传脚本,可以将所有用户提交的文件上传到一个目录,我想让该目录像普通目录一样显示图片/音频/视频,但以编程方式将任何“可执行”文件类型(.php、.js、.cgi、.html等)作为纯/文本或应用程序/八位字节流

目前,我的.htaccess中有以下内容:

Options -MultiViews +FollowSymLinks -Indexes -ExecCGI
php_flag engine off
RemoveHandler .cgi .pl .py .php4 .pcgi4 .php .php3 .phtml .pcgi .php5 .pcgi5 .pyc .pyo .php2 .html .xhtml .htm
RemoveType .cgi .pl .py .php4 .pcgi4 .php .php3 .phtml .pcgi .php5 .pcgi5 .pyc .pyo .php2 .html .xhtml .htm
AddType text/plain cgi pl py php4 pcgi4 php php3 phtml pcgi php5 pcgi5 pyc pyo php2 html xhtml htm
正如您所知道的,它很快变得难以管理,并且仍然会遗漏任何我不知道将要继续执行的文件类型

Apache有可能做到这一点吗?还是由php来处理更好


我对服务器配置还比较陌生,所以非常感谢您的帮助

如果您依靠PHP来设置标题,可能会更好。将可执行文件mime类型设置为
plain/text
,浏览器将其解析为文本。应该有很多库执行此操作,如果您依靠PHP来设置头,可能会更好。将可执行文件mime类型设置为
plain/text
,浏览器将其解析为文本。应该有很多库执行这个操作