HTML5 无法像 PHP7/PHP 那样进行处理/解析

HTML5 无法像 PHP7/PHP 那样进行处理/解析

因此,我不得不重新配置我的 Linux 服务器,因为我将它迁移到了另一个系统,并决定从头开始设置它,只是为了好玩和练习。唯一的问题是,现在我的LAMP正在运行,PHP7而不是PHP5像上次那样。我遇到的问题是我的HTML/HTML5文件没有运行或被处理为PHP。我创建了文件,并从和.htaccess更改为,更改为,以及不同的变体,但它仍然根本不起作用。我确实看到的是部分代码是可见的。AddTypeAddHandlerapplication/x-httpd-php70application/x-httpd-php7application/x-httpd-php7.0PHP

在此处输入图片描述

我确实注意到,如果我从我的 php 代码中删除<p></p>,所有的 php 都会再次被隐藏。还将 改为 ," "' '仔细检查语法没有从 改为 ,而php5没有php7。我已经测试了一个.php文件,<?php phpinfo(); ?>只要它是 ,它就能完美运行.php。一旦将.html其更改为 ,它就会停止工作。PHP 模块在 中启用apache2.4。在更改 Web 根目录中的文件时,我无数次重新启动了 apache2.4,并且我已经查看了如何在 ubuntu 上使用 apache2.4 安装 PHP7 的教程。我实际上在服务器安装期间安装了 LAMP,所以我不明白为什么会出错。我完全没有主意了。非常有帮助,我已经与此斗争了将近 4 天。

答案1

您需要指定.html作为AddHandler规范的扩展。

AddHandler application/x-httpd-php-source .html

或者您可以使用 FilesMatch 块来设置处理程序。

<FilesMatch ".html$">
    SetHandler application/x-httpd-php-source
</FilesMatch>

php 似乎有两个处理程序:application/x-httpd-php和。检查您的配置以查看处理文件application/x-httpd-php-source时使用哪个。.php

另一种方法是进行内部重定向,.html例如.php

  RewriteRule  (.*).html $1.php

您可以将其设置为 .html 页面不存在的条件。文件需要相应地重命名。

除非您阻止或从外部重定向 .php URL,否则对 .php 页面的请求将有效。这种重定向可能很困难。

相关内容