Apache:内联PHP在Linux上不起作用

Apache:内联PHP在Linux上不起作用,php,apache,config,loadmodule,Php,Apache,Config,Loadmodule,我很难让我的PHP为我的Apache服务器工作。我正在运行Oracle Linux,并使用yum install php+yum install httpd获取我的php和Apache。我浏览了互联网,做了几件事: 首先,我进入了httpd.conf文件并添加了LoadModule php5_modules/libphp5.so。我已经选择使用php.conf文件中的一个,它与php.conf文件完全相同。此外,我已经完成了AddType应用程序/x-http-php.php,所以现在我的.ph

我很难让我的PHP为我的Apache服务器工作。我正在运行Oracle Linux,并使用
yum install php
+
yum install httpd
获取我的php和Apache。我浏览了互联网,做了几件事:

首先,我进入了httpd.conf文件并添加了
LoadModule php5_modules/libphp5.so
。我已经选择使用php.conf文件中的一个,它与php.conf文件完全相同。此外,我已经完成了
AddType应用程序/x-http-php.php
,所以现在我的.php文件可以正常加载了

其次,我试着运行我的Apache服务器,它运行得很好。它显示我的index.html文件,我用DirectoryIndex设置了该文件。然而,当我尝试将php代码放入其中时,它会自动被注释掉,我认为这是因为我没有将其设置为在服务器端正确执行

现在,说了这么多,我想知道我还遗漏了什么。我有两个设置,一个是一个.php文件,另一个是php与html内联

index.html

<!DOCTYPE html>
    <body>
        <?php echo "Hello everybody."; ?>
    </body>
</html>

index.php

<?php phpinfo(); ?>

index.php文件可以正常加载,但index.html不运行php代码。如何让php的内联版本工作

注意:我已将Mac OS设置为可以很好地处理.php文件,但它在Html文件中使用内联php时也遇到了问题。我错过了什么



解决方案:Html文件本身不能包含php。相反,该文件必须是.php扩展名,并且在.php文件中,您可以有文本、html和JavaScript。

您需要在
php.ini
文件中设置
short\u open\u tag=On
,存在类似问题:

您可能希望查看已接受答案中的第2点至第5点:

  • LoadModule(看起来您已经正确配置了它)
  • 将Apache设置为运行PHP文件(这是第三点,看起来 您没有配置它)。在httpd.conf文件中添加以下行:
    AddType应用程序/x-httpd-php.php
  • 确保文件以扩展名
    .php
    结尾(配置Apache以运行php文件后,请参见上一点)

  • 将代码更改为使用长的PHP开始标记(
    ),我认为.html文件根本不会通过PHP运行,因此会将其视为不可见的普通标记

    将扩展名改为.php

    Php可以包含html

    编辑: 存在一个选项,例如,如果您出于某种原因不能或不想使用php结尾,可以将Apache配置为像解析php文件一样解析html文件


    在我看来,这不是一个好的解决方案,因为它隐藏了这样一个事实,即页面对于未来的维护人员来说是动态的。

    您查看了错误日志吗?Apache不应该注释您的PHP代码,即使模块工作不正常,它也应该忽略这一点,并像isI那样显示,并且它没有说明任何与PHP.Ju相关的内容关于favicon.ico,我只是将其设置为On,没有任何更改。此外,我没有使用短开放标记。注意:XI已正确加载模块,当我运行“sudo apachectl-M”时,我可以找到列出的模块。此外,我刚刚添加了“AddType”语句中,但没有任何更改。此外,我没有使用短标记。虽然LoadModule在php.conf文件中,但已加载。这有关系吗?好的,.php扩展名已经解决。我现在可以很好地运行这些扩展名了。:D现在只剩下一个问题,那就是内联php。在使用内联php的文件中,您使用了什么扩展名?另外,请检查PHP短开放标记(
    谢谢你的帮助和详细的信息。它帮助了很多!:D另外,你怀疑文件的扩展名是正确的!嗯,现在我觉得很愚蠢。XD谢谢你大卫的回答。我假设因为有HTML,它会是一个HTML文件,但现在我明白了。问题解决了!没问题,原因是网站是存在的,所以你不必非得在墙上发火,就像大多数在这里回答问题的人一样:D