似乎无法在MAMP中使PHP正常工作

7
我想学习php,第一步是使php以某种方式工作。我尝试使用MAMP,但遇到了一些问题。
具体来说:如果我创建一个包含以下代码的文件,并将其保存为index.html放在MAMP的“文档根目录”中,当我将浏览器指向http://localhost:8888/index.html时,我会得到一个空白页面。
代码:
<html>
<body>

    <?php
    echo "Hello World!";
    ?>

</body>
</head>

或者,如果我将一些PHP代码放入自己的文件中(比如test.php),然后将浏览器指向该文件,它只会在浏览器中显示文件的全部文本。

有任何想法我可能做错了什么吗?


4
您需要使用以.php为扩展名的文件来保存包含PHP代码的文件,因此您需要将其命名为“index.php”而不是“index.html”。请注意,这并不会改变原始文件的内容或意义。 - Joe Torraca
你的 Apache 配置是否已经设置为使用 PHP 解释 .html 文件? - Maerlyn
@JosephTorraca 天啊。我知道这一定是什么愚蠢的问题。感谢您的帮助。如果您愿意,请将您的评论作为答案提交,我会接受它。感谢您的帮助。 - jkjenner
5个回答

12

我有类似的问题。

在TextWrangler、Komodo或其他编辑器中创建一个新文件,然后添加以下代码:

AddType application/x-httpd-php .html .htm
AddHandler application/x-httpd-php .html .htm

你需要将文件保存为.htaccess(前面带有点号;这是文件名)。 将它保存在 /Applications/MAMP/htdocs。这与你保存php和html文件的位置相同。该.htaccess文件将是一个不可见文件;你在Finder中看不到它,但如果你在终端中cd到它,或者在Finder中搜索并选择“Kind”下的文件可见性类型,你就可以看到它。

现在尝试转到 localhost:8888/,你应该能看到所有可用的文件。通过这个新创建的.htaccess文件,你现在也可以在HTML文件中嵌入PHP代码。


1
如果您有MAMP Pro,您可以通过在此处编辑模板来进行更改,以便影响所有您的主机/站点:文件 > 编辑模板 > Apache > httpd.conf,并将这两行粘贴到该文件中,在<IfModule mime_module>标签内部(大约在底部的3/4处)。您将在其中看到类似的AddHandler语句。 - Clifton Labrum

6
在MAMP中,编辑以下文件: /Applications/MAMP/conf/apache/httpd.conf 然后搜索 '#AddHandler type-map'(不包括引号)。在其下方添加以下内容: AddHandler application/x-httpd-php .php .html 保存文件并停止、重新启动MAMP。Php解析将发生在以扩展名 .php 和 .html 结尾的文件中。

将“.html”添加到“AddType application/x-httpd-php .php”行的末尾,或将文件从index.html重命名为index.php对我有效。 - Ken Roy

5
您需要使用扩展名为.php的文件来保存包含PHP代码的文件。因此,您需要将其命名为index.php而不是index.html。这是一个简单的修复方法。

2

所以,这对我很有效:

不要把文件放在这个文件夹里:

MAMP/htdocs/folder-that-contains-all-files/

而是直接把所有文件放在htdocs文件夹中!

所以:

MAMP/htdocs/包括index.php等所有文件。

希望这可以帮到你!


0

修改 /Applications/MAMP/conf/apache/httpd.conf

搜索 #AddHandler type-map

并插入 AddHandler application/x-httpd-php .php .html

对我有用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接