如果缺少 php.ini,Apache 仅将我的页面作为 PHP 运行
Apache only runs my page as PHP if php.ini is missing
我正在尝试让 Apache 2.4 在 Windows 8.1 上与 PHP 5.6 一起工作。
我将常用行添加到 httpd.conf:
LoadModule php5_module "c:/php/php5apache2_4.dll"
AddHandler application/x-httpd-php .php
PHPIniDir "c:/php"
它工作正常,在我的 test.php 页面(只是 Hello! <? phpinfo(); ?>
)上正确显示 php 信息... if php.ini 在 c:\php 中不存在。 (大概 PHP 使用默认配置,我需要更改它以包含 mysql。)一旦我创建 php.ini,Apache 就无法执行 PHP 函数,而只是将页面显示为文本。
Apache 服务器似乎没有认为有什么问题;在重新启动 httpd 时,error.log 只显示
AH00455: Apache/2.4.10 (Win64) PHP/5.6.4 configured -- resuming normal operations
php.ini 只是安装中包含的 php.ini-production 文件,已重命名。如果我故意向其中引入错误,它们会显示在 Apache 日志中。
什么可能导致 Apache 不 运行 我的页面作为 PHP 文件?
我想通了:PHP 默认为 short_open_tag=On,所以我的测试没有配置文件。但是默认的 php.ini 文件有 short_open_tag=Off,所以我的 test.php 是不正确的:它应该是 Hello! <?php phpinfo(); ?>
)。
我正在尝试让 Apache 2.4 在 Windows 8.1 上与 PHP 5.6 一起工作。
我将常用行添加到 httpd.conf:
LoadModule php5_module "c:/php/php5apache2_4.dll"
AddHandler application/x-httpd-php .php
PHPIniDir "c:/php"
它工作正常,在我的 test.php 页面(只是 Hello! <? phpinfo(); ?>
)上正确显示 php 信息... if php.ini 在 c:\php 中不存在。 (大概 PHP 使用默认配置,我需要更改它以包含 mysql。)一旦我创建 php.ini,Apache 就无法执行 PHP 函数,而只是将页面显示为文本。
Apache 服务器似乎没有认为有什么问题;在重新启动 httpd 时,error.log 只显示
AH00455: Apache/2.4.10 (Win64) PHP/5.6.4 configured -- resuming normal operations
php.ini 只是安装中包含的 php.ini-production 文件,已重命名。如果我故意向其中引入错误,它们会显示在 Apache 日志中。
什么可能导致 Apache 不 运行 我的页面作为 PHP 文件?
我想通了:PHP 默认为 short_open_tag=On,所以我的测试没有配置文件。但是默认的 php.ini 文件有 short_open_tag=Off,所以我的 test.php 是不正确的:它应该是 Hello! <?php phpinfo(); ?>
)。