【发布时间】:2011-09-08 17:13:48
【问题描述】:
首先,很抱歉,由于我的知识不足,问题不清楚。
我很想知道 apache 如何调用适当的引擎/调用程序来处理请求。假设,用户请求 http://somesite.com/someurl.php - 现在 apache 如何确定它需要启动 PHP 解释器? apache 是否根据文件扩展名/MIME 类型 或其他任何内容来确定?
我知道的是:我可以配置 apache 以根据文件的扩展名调用某些解释器,例如:
AddHandler cgi-script .cgi .py
# Tells apache to treat .cgi & .py files to treat as cgi scripts
为什么我担心它?最近,我从我的问题 (PHP file upload: mime or extension based verification?) 中得知,如果某些用户上传的文件具有错误的 MIME 类型(即image/jpeg)但扩展名为.php,则该文件可以被执行(假设它具有执行权限) 和 EXIF 元数据中包含的恶意 php 代码可以做有害的事情。
【问题讨论】: