0

当我使用 .htaccess 文件到一个目录试图让 php 在 html 文件中运行时,我的问题就开始了。我尝试了很多 AddTypes 和 AddHandlers 的组合。我把它们拿出来,现在我的 php 文件正在被浏览器下载而不是运行。这里还有一些其他问题我已经研究过,但它们并不完全是我的问题。

我现在很迷茫,我几乎尝试了 AddType 和 AddHandler 的每一种组合。从那以后,我决定使用 mod_rewrite 并且我的所有文件都以 .php 结尾,但我无法让它们运行。

这是我用来测试的:

    <!DOCTYPE html>

    <body>
    <?php
      echo("php working");  
    ?>
    </body>

    </html> 

我错过了什么吗?幸运的是,我在根目录之外的单独目录中进行了所有更改,以便该站点仍然运行,但该文件夹中的任何 php 文件都无法在 broswer 中查看。我能做些什么?任何帮助表示赞赏。

编辑:为了清楚起见,我最初试图能够将 php 放入我的 html 文件中,所以我在搞乱处理程序和 addtypes。我的服务器确实有 php。如果我从 .html 文件调用 php 脚本,它就会运行。我只是无法像上面包含的示例那样在浏览器中打开一个 php 文件,它曾经在浏览器中打开。我担心我通过尝试 .htaccess 中的所有不同处理程序搞砸了一些事情。从那以后,我已经清除了我的 .htaccess 文件,希望这至少能让我恢复正常,但事实并非如此。

第二次编辑:我去了根目录并创建了一个 php 文件,它运行得很好,所以它肯定是我在特定目录的 .htaccess 中更改的。无论如何我可以重置该目录吗?

4

2 回答 2

1

你在你的 htaccess 文件中看到这样的行吗?php_flag 引擎关闭

如果是,请将其删除。还有一件事可以帮助你理解发生了什么下面的 htaccess 将使 Php 不被执行,而是作为文本文件下载

<VirtualHost *>
    ServerName sourcecode.testserver.me
    DocumentRoot /var/www/example
    AddType text/plain php
</VirtualHost>

还有一件事我猜这个话题在这里解决过一次-> htaccess 下载文件而不是加载

于 2013-02-21T00:13:37.737 回答
1

您是否确保在 apache 中正确安装 php?

如果您使用 php 作为模块,则需要以下内容:

LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php

# configure the path to php.ini
PHPIniDir "C:/php"

或作为 CGI 二进制文件

ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php

# For PHP 4
Action application/x-httpd-php "/php/php.exe"

# For PHP 5
Action application/x-httpd-php "/php/php-cgi.exe"

其他要考虑的事情,php 二进制文件上的权限设置是否正确,php.ini 是否存在且正确,自从将 php 安装到 apache 后,你是否重新启动了 apache?

最后,php 不在 html 文件中运行,您需要将以下内容设置为 apache 配置中的最后一件事

AddType application/x-httpd-php .html .htm
于 2013-02-21T00:17:30.243 回答