Apache解析.phtml文件需同时配置AddType和AddHandler指令:AddType设置Content-Type响应头,AddHandler绑定PHP处理器,二者缺一不可,配合才能实现PHP代码执行。
apache 主配置文件(通常是 httpd.conf)中配置 mime 类型映射,核心靠两个指令:addtype 和 addhandler。它们分工不同,常配合使用,不能互相替代。
AddType:设置响应头中的 Content-Type
它只负责告诉浏览器“这个文件应该被当成什么媒体类型解析”,不涉及执行逻辑。例如用户访问 report.php,AddType 决定返回头里写 Content-Type: text/html 还是 application/x-httpd-php —— 但注意:它本身不会触发 PHP 解析。
- 语法格式:
AddType MIME-type extension [extension...] - 常见用法:
AddType application/x-httpd-php .php .phtml - 如果只想让浏览器正确渲染,不执行代码,比如把
.json文件当 JSON 显示:AddType application/json .json - 多个扩展名可一次声明,中间空格分隔,无需重复写多行
AddHandler:绑定扩展名到服务器端处理器
这才是真正让 Apache “执行 PHP”的关键指令。它把某个后缀和一个已注册的处理器(如 php5-script 或 application/x-httpd-php)关联起来。只有经过 AddHandler 绑定,请求该扩展名的文件才会被交给 PHP 模块处理。
使用ydata-profiling(前身为pandas-profiling)生成全面的数据质量报告,包含相关性分析、缺失值模式和基数检测。导出交互式HTML仪表板和JSON摘要。
- 语法格式:
AddHandler handler-name extension [extension...] - 典型搭配(PHP 7+ 常用):
AddHandler application/x-httpd-php .php .phtml - 若使用
php7-script处理器(取决于模块加载方式),则写:AddHandler php7-script .php - 注意:handler-name 必须与
LoadModule加载的模块及模块内部定义的处理器名一致,否则无效
两者配合才是完整流程
单独写 AddType application/x-httpd-php .php 只改响应头,PHP 不会运行;单独写 AddHandler application/x-httpd-php .php 但没加载对应模块或没配好 MIME,也可能报 500 错误。推荐标准写法:
-
LoadModule php_module modules/libphp.so(Linux)或对应 DLL(Windows) AddHandler application/x-httpd-php .php .phtmlAddType application/x-httpd-php .php .phtml- 可选:为 HTML 文件也启用 PHP 解析(谨慎使用):
AddHandler application/x-httpd-php .html
补充说明
Apache 还有一个全局 MIME 映射文件 mime.types,用于静态资源(如 .jpg、.css)的默认类型识别。但 PHP 类动态内容不应依赖 mime.types 配置,必须显式用 AddType + AddHandler 控制,否则无法执行。

















