3

我想通过 Apache 呈现一个 .phtml 文件,但是当我尝试时,它将页面呈现为文本而不是 html。

在我的 vhost 配置中,如果我尝试渲染 index.php,它会正确执行。但是,当我将 DirectoryIndex 更改为 index.phtml 并尝试呈现公共目录中的 index.phtml 时,它只会呈现文本。

虚拟主机配置为: code ServerName parminder.com DocumentRoot "C:/workspace/parminder_local_net/public" ErrorLog logs/parmindercom.log
选项索引 FollowSymLinks AllowOverride All Order allow,deny Allow from all DirectoryIndex index.phtml *

我还需要配置什么才能使其正常工作?我需要使用 .htaccess 吗?基本概念是什么?

4

3 回答 3

3

htaccess 文件根文件夹 --> 文件夹 --> html 页面和子文件夹

尝试将其添加到其中:

AddHandler php-script .php .php5 .php4 .php3 .html .htm .phtml

于 2012-04-27T18:20:29.727 回答
1

您需要配置 Apache,以便它知道您希望将 .phtml 文件视为 PHP。请参阅PHP 安装指南的第 8 步。

<FilesMatch "\.ph(p[2-6]?|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>

...但是 .phtml 是用于 PHP 2 的文件扩展名。您可能应该审核它们,使它们符合现代 PHP 编码实践并重命名它们以遵循当前约定。

于 2012-04-27T18:22:09.610 回答
1

安装完apache服务器后,需要说明apache解析器会读取哪些文件,

这是通过提及文件类型来完成的。像

**

> <FilesMatch \.php$>
>     SetHandler application/x-httpd-php </FilesMatch>

**

并且为了允许 .php、.php2、.php3、.php4、.php5、.php6 和 .phtml 文件作为 PHP 执行,请使用以下

<FilesMatch "\.ph(p[2-6]?|tml)$">
    SetHandler application/x-httpd-php
</FilesMatch>
于 2012-04-27T18:34:26.767 回答