php_value 引擎关闭/打开无法按我预期的方式工作

php_value 引擎关闭/打开无法按我预期的方式工作

我正在运行 PHP 版本 => 5.3.0

正如你所见,我默认关闭了php的引擎。

1)我可以在主虚拟主机容器中的 httpd.conf 中全局默认关闭 php 吗?

2) 我没有尝试上面的 #1,但尝试了下面的“php_value engine on”。当我加载任何页面时,它都会下载文件,php 实际上处于关闭状态。如果我删除该行,php 就会恢复运行。

我找不到有关 5.3 版此特定设置的文档,所以我不确定这是一个错误还是正常行为。

我希望将服务器范围默认为关闭,并且必须为每个虚拟主机明确启用它,而不必记住在虚拟主机块中有该行。

我一直在使用的示例模板...

 <VirtualHost *:80>
    DocumentRoot "/path"
    ServerName example.com
    ServerAlias www.example.com
    DirectoryIndex index.php

    # php setttings
    php_admin_value open_basedir "/path/:/private/var/tmp/:"
    php_value engine off

    <Directory "/path">
        Options FollowSymLinks
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
 </VirtualHost>

答案1

是的,您可以在 Apache httpd 配置中全局关闭 PHP,然后为某些虚拟主机激活它。

除了使用 LoadModule 指令实际加载模块之外,你还必须分配应用程序/x-httpd-php处理某些文件或文件扩展名。

必要的配置可能类似于以下代码片段:

<FilesMatch "\.ph(p5?|tml)$">
  SetHandler application/x-httpd-php
</FilesMatch>

此代码片段将使 mod_php 解析带有扩展名的文件.php.php5.phtml

相关内容