Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP未解释,在源代码视图中显示_Php_Apache - Fatal编程技术网

PHP未解释,在源代码视图中显示

PHP未解释,在源代码视图中显示,php,apache,Php,Apache,我希望这将是一个有用的页面,可以帮助您开始运行php代码,并解决当前的问题。我有一些非常简单的代码,如下所示: <html> <head> <title> Practice</title></head> <body> This is HTML <?php echo "This is PHP"; ?> </body> <html> 实践 这是HTML 这被上传到一个运行apache的e

我希望这将是一个有用的页面,可以帮助您开始运行php代码,并解决当前的问题。我有一些非常简单的代码,如下所示:

<html>
<head>
<title> Practice</title></head>
<body>
This is HTML
<?php
echo "This is PHP";
?>
</body>
<html>

实践
这是HTML
这被上传到一个运行apache的ec2网站上。代码不会被解释,当您查看页面的源代码时,它会显示php代码

你可以看到这张照片


有什么想法吗?php代码非常基础,我认为它可能与apache配置有关。请告诉我您需要的任何其他信息,我将提供这些信息,希望能告诉我如何获取这些信息。

您可能需要在.htaccess文件或Apache配置本身中使用addHandler或addType:
e、 g.AddType应用程序/x-httpd-php.php

您确定已安装php吗?如果是,您需要确保apache将
.php
文件与php处理程序相关联。在
/etc/apache/apache.conf

 LoadModule php5_module modules/libphp5.so


更改文件后,您需要通过
sudo服务httpd restart

重新启动apache,您可以使用安装libapache2-mod-php5

apt-get install libapache2-mod-php5

为我工作。

如果您使用的是php7,请确保安装了此模块

sudo apt-get install libapache2-mod-php7.0
将7.0替换为您正在使用的php版本

要查找php的版本,请使用

php -v 

如果用户目录中有网页内容,如:

/home/*/public_html
然后需要启用执行这些,默认情况下禁用:

# Running PHP scripts in user directories is disabled by default
# 
# To re-enable PHP in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
<IfModule mod_userdir.c>
    <Directory /home/*/public_html>
        php_admin_flag engine Off
    </Directory>
</IfModule>

根据您的系统、PHP版本等调整路径和文件名。

在我的情况下,
/var/www/
文件夹的权限不正确

我必须跑:

sudo chown -R www-data /var/www/
sudo chgrp -R www-data /var/www/

您在该服务器上安装了php吗?如果您创建一个包含
phpinfo()
的页面
phpinfo.php
,您会得到任何结果吗?我没有/etc/apache/apache.conf目录,这个文件可能是另一个名称吗?我运行了以下命令:grep root apache.conf,结果是没有这样的文件或目录。grep只搜索根目录。该目录将取决于您的操作系统,但对于ubuntu服务器,它的
/etc/apache2/conf.d/apache.conf
仍然没有骰子。可能是这个文件:/etc/httpd/conf/httpd.conf吗?是的,就是这样,这实际上取决于那些正在研究这个问题的人的分布情况:AmazonEC2上没有安装php。你必须确保它已安装。试试“哪个php”看看你是否这样做。libapache2-mod-php7.2是当前版本,fwiw
/etc/apache2/mods-enabled/php7.3.conf
sudo chown -R www-data /var/www/
sudo chgrp -R www-data /var/www/