2011-11-24 132 views
7

无法加载C:/PHP5/php5apache2_2.dll到服务器在运行窗口XP的机器上的Apache 2.2无法加载php5apache2_2.dll

人有任何想法可能是什么问题,我得到这个错误。我可以看到c:/ php5文件夹中没有php5apache2_2.dll。

+0

简单的答案是在这里:http://stackoverflow.com/a/13965313/1142944 – tesmojones

+0

@tesmojones恐怕事实并非如此。我有问题与Apache 2.2和线程安全的PHP 5.5在Win 7 –

回答

2

首先你必须下载.dll文件(php5apache2_2.dll) 然后把它放在你的扩展目录中。

然后编辑php.ini文件,找到德文本:

;延长= php5apache2_2.dll

//并改变y以 延长= php5apache2_2.dll

如果文本不存在放行自己。 然后重新启动Apache,它应该加载你的扩展。

PD:你可以看到你的扩展目录所在寻找 在你的php.ini文本“下extension_dir”,有时看起来像: 的extension_dir = C:\ PHP \扩展

希望这有助于你,如果没有请在这里粘贴错误,你可以在apache/error/error.log中找到 错误日志文件或类似的东西。

+0

嗨sandino,感谢您的答复,但从我可以下载php5apache2_2.dll谷歌它,但没有找到任何合适的站点 – user965884

+0

安装.dll文件当你安装php(如果命令行你可以指定加载dll)或者如果你安装一些包如xamppp它已经安装。 – sandino

+0

如果你的apache没有编译成php5的suport文件,你必须在你的apache.conf文件中加入:LoadModule php5_module“c:/php/php5apache2_2.dll”。你可以从这里下载PHP源代码和DLL的http://windows.php.net/download/ – sandino

2

你应该从PHP distribution package下载dll文件。并参见three ways to set up PHP to work with Apache 2.x

可以在< [APACHE_HOME]> \ CONF配置PHP像Apache处理程序\ httpd.conf文件如下:

LoadModule php5_module "c:/php/php5apache2_2.dll" 
AddHandler application/x-httpd-php .php 
#configure the path to php.ini 
PHPIniDir 'C:\php\' 

注:为了避免错误,同时启动Apache时,php ini dir路径应该是用反斜杠单引号。不要忘记用反斜杠结束它。

+0

该DLL不包含在他们的5.5 zip文件(php-5.5.9-nts-Win32-VC11-x86.zip)中,因为某些原因非线程安全。他们的安装说明链接到源代码,这没有帮助。尽管它在线程安全的拉链中。 – GregInWI2

2

这是我如何得到它去:

  1. 创建的文件夹C:\ Apache的
  2. 下载并安装HTTP-2.2.22-win32的86无ssl.msi 在安装过程中,进入localhost为网络域名和服务器名称
  3. 从浏览器,在地址http://localhost/和页面类型与“这工程” (我不知道是否有一个上帝来了,但采取的是一个好兆头:)

  4. 创建文件夹C:\ PHP

  5. 下载并安装php-5.2.17-Win32-VC6-86。微星
  6. 创建在记事本中的新文件有以下:
  7. 在Apache/htdocs文件夹保存为phpinfo.php的
  8. 从浏览器中键入URL中http://127.0.0.1/phpinfo.php
    它没有工作(即它没有运行.PHP程序文件)

  9. 嗯,哦,是的,你必须重新启动Apache它看到更新其 自己的配置文件
    开始,阿帕奇,控制..
    - >产生的错误,它无法找到C:\ Apache的\ php5apache2_2.dll

  10. 好吧,我发现它在C:\ PHP和我把它复制到C:\ Apache的\
    开始,阿帕奇,控制..
    - >产生有关与第C 495线PHPIniDir指令的问题的错误:/Apache/conf/httpd.conf

  11. 修正了通过编辑在上述文件中的该行

    PHPIniDir "C:/PHP/php.ini" 
    
  12. 试图重新启动Apache ,在浏览器中运行测试文件。 不过,这并没有工作:(

  13. 回忆之前看到这一点,并决定重新启动计算机 重新启动(或启动)Apache服务器

  14. 再次运行测试文件.. 它的工作!

注意,在一些上面的我可能有一些前进和后退混合起来的斜线 祝你好运!

4

什么为我工作获得php5apache2_4 .dll-php-5.4-win32.zip从 apachelounge并使用“PHP 5.4.8”解压缩文件夹中的“php5apache2_4.dll”文件。我在我的Win 7(64位)上安装了apachelounge.com的apache 2.3.4(32位)和windows.php.net的php 5.4.9(32位)。

尽管5.4.8 - 5.4.9不匹配,该DLL仍然可以工作。

将造成相应的“php.ini中”和“的httpd.conf”内的变化要维持acoording这个helpful guide.

最好的问候。

+1

我下载了php 5.4.9!提取zip文件,但无法找到php5apache2_4.dll。我在这里错过了什么吗? – VishwaKumar

+0

我得到了PHP 5.5与这里的文件一起工作:http://www.apachelounge.com/viewtopic.php?p=25460 我用php5apache2_2.dll。 –

0

以上都没有为我工作。我尝试更换php5apache2_2.dll文件并重新启动一切,但得到了同样的错误。我最终卸载了Apache,MySQL和PHP,删除了路径变量,然后安装了WampServer。一切都在不到5分钟内完成并运行。

顺便说一下,我通过删除程序文件中的文件夹来卸载PHP,因为它在“添加/删除程序”中没有打开。卸载后我还删除了剩余的Apache和MySQL文件夹。

0

即使文件存在,并且apache显示此文件不存在的错误,请安装Microsoft C++ Redistributable Package。请注意,您必须安装2008版,然后是2010年。安装这两个软件包,不仅是2010版。

0

我有过类似的问题。在遵循特定的Youtube教程后,我发现如果你在Apache运行时编辑httpd.conf文件,它会搞砸。 确保先安装Apache ...然后关闭它,然后安装php。它应该编辑httpd.conf文件本身。这个Youtube教程解决了我的问题。 http://www.youtube.com/watch?v=UKbEzmMliNM 希望它有帮助。我安装了MySQL并正在工作......但必须安装.Net 4 Framework。

1

你得到一个错误,由于这样的事实,在C:/PHP5/php5apache2_2.dll不随PHP的非线程安全的版本,您可能下载。有两个选项:

  • 下载并安装PHP的线程安全的版本而不是和你 会得到你所需要的一切。

  • 如果非线程安全版本对于您想要完成的任务很重要,请下载线程安全版本的zip包,然后仅从该文件夹中获取所需的.dll文件。

的版本:对于Apache服务器2.2,您需要下载PHP 5.4线程安全的,它随双方php5apache2_2.dll和php5apache2_4.dll。一些早期的版本可能也适用。 PHP 5.5只与php5apache2_4.dll一起发货,这将与您的版本不匹配。

比照下载链接在这里的官方网站:http://windows.php.net/download/

1

对我来说,这个问题是来自其他网站,替换文件php5apache2_2.dll解决不知何故从php.net网站下载的文件已损坏。

我已经有文件php5apache2_2.dll我WAMP 2.2和PHP版本5.3.13所以我只是复制该文件到我35年5月4日的版本和它的工作。

我没有与Apache配置混乱其他人的建议。

还有一件事我所做的就是安装Visual C++可再发行的Visual Studio 2008为我运行Windows 7旗舰版64位机。我不认为这有帮助,因为我已经有了x86版本并使用了我以前的PHP版本,但是这是我采取的行动的一部分。

0

我有同样的错误。 我安装了x64版本的Apache和x86版本的php。 经过一番搜索后,我发现这是行不通的。

所以我不得不安装x64(threadsafe)版本的PHP。 之后这个Apache工作正常。 :) 希望这有助于!