apache在添加php扩展后没有启动

时间:2013-02-27 04:35:57

标签: php apache

UGH - Windows Server 2003 apache 2.2(httpd-2.2.22-win32-x86-openssl-0.9.8t) PHP 5.2(php-5.2.17-Win32-VC6-x86)

几个月来,一切都在嗡嗡作响 - 我最近实施了mPDF实施......(在笔记本电脑上本地开发) 当我将它上传到我的服务器时 - 我收到一个错误,说我需要PHP_MBSTRING

所以我在服务器上重新启动了安装程序 - 并添加了此扩展程序...... apache不会重启。

如果我从我的http.conf中注释掉这一行 - 那么它就会开始......

PHPIniDir "C:/PHP/"
LoadModule php5_module "C:/PHP/php5apache2_2.dll"

是 - php5apache2_2.dll已存在 - 并且在此目录中... 我尝试将此扩展程序注释掉PHP_MBSTRING,甚至将其从EXT文件夹中删除...

我试过完全卸载并重新安装...... 我已经转向升级到PHP 5.3(需要安装C ++ redist) 和PHP 5.4 - 虽然这些都没有帮助。

WTFlip !!我不知所措 -

错误日志就像这样:

Syntax error on line 520 of C:/Program Files/Apache Software Foundation/Apache2.2/conf/httpd.conf:
Invalid command 'PHPIniDir', perhaps misspelled or defined by a module not included in the server configuration
[Tue Feb 26 23:33:19 2013] [notice] Child 1492: Released the start mutex
[Tue Feb 26 23:33:20 2013] [notice] Child 1492: All worker threads have exited.
[Tue Feb 26 23:33:20 2013] [notice] Child 1492: Child process is exiting

3 个答案:

答案 0 :(得分:1)

首先,正斜杠是正确的。那就是说......

PHPIniDir "c:/php"
LoadModule php5_module "c:/php/php5apache2_2.dll"

你的路径中有php目录吗?

另外,请确保您已添加

AddType application/x-httpd-php .php

就在conf文件之前

PHP EVER是否已在此系统上成功运行,您是否能够返回正常工作状态?如果是这样,您应该能够从那里添加多字节字符串模块。

答案 1 :(得分:0)

以下是与该问题相关的解决方案列表:

以及

答案 2 :(得分:0)

在Fedora 25 linux上,您必须在使用之前加载模块 PHPIniDir属性,因为该模块提供了读取属性的能力......但是......

使用httpd 2.4.x(apache)和php 5.6.30,当LoadModule php5_module ...和PHPIniDir“/ etc”在/etc/httpd/conf.modules.d下的同一个文件中时,服务器无法启动 - - 这让我困扰了一段时间,因为LoadModule指令确实在PHPIniDir属性之前... 去图...

但是,当LoadModule命令位于/ etc / httpd / conf文件夹中的httpd.conf并且PHPIniDir属性设置如上时,则 一切正常,phpinfo()确认加载的ini文件是“/etc/php.ini”

总而言之,这对我有用: 在httpd.conf中

LoadModule php5_module modules / libphp5.so

在conf.modules.d / 10-php5.conf中,位于文件末尾

PHPIniDir“/ etc”

---然后当然重启apache“systemctl restart httpd”和 检查你输入的网页上的phpinfo()..