在我的笔记本电脑 (osx 10.2.2) 上,我使用 php-fpm 编译了 apache 2.4.12 和 php 5.5.22。奇怪的是,当我在服务器上 ping .php 文件时,apache 会正确绑定到新的 php 并运行它。但是,如果embedded
html 文件中有一个 php 命令(如下所示),php 5.5.22 在解释以下 html 文件时会恢复并启动发行版 php(5.5.14)
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<?php include_once("sysinfo.php"); ?>
</body>
</html>
发生了什么事?任何帮助表示感谢。
答案1
这是因为 Apache 在决定是否将请求代理到 PHP-FPM 或内部处理时不会查看文件内部。.html
文件不会发送到 PHP-FPM,尽管可以这样配置。但这会浪费性能。
恕我直言,在文件中执行 PHP不是命名.php
,.phtml
或者其他任何错误配置。人们希望 HTML 文件是真正静态的。如果您使用 PHP-FPM,您可能应该禁用 mod_php。