php扩展&;windows环境变量PATH


php extension & windows environment variable PATH

我刚刚安装完Apache2.4.2和pHp5.4.5现在,当声明服务器时,我收到PHP启动错误"无法加载大约12个扩展名的动态库xyz.dll。现在,当我将文件从PHP目录复制到system32时,其中许多错误都会被删除,但我听说过环境变量,我想使用环境变量,而不是将每个文件复制到system32。

谢谢Varun Agrawal

(假定Apache作为Windows服务运行)

以下是桌面应用程序的搜索顺序,描述了用于定位DLL的搜索顺序:

  • 1.加载应用程序的目录
  • 2.当前目录
  • 3.系统目录。使用GetSystemDirectory()函数获取此目录的路径
  • 4.16位系统目录。没有任何函数可以获取此目录的路径,但会对其进行搜索
  • 5.Windows目录。使用GetWindowsDirectory()函数获取此目录的路径
  • 6.在PATH环境变量中列出的目录。请注意,这不包括由App Paths注册表项指定的每个应用程序路径。计算DLL搜索路径时不使用App Paths密钥

通过修改PATH环境变量以包含DLL所在的目录,可以找到它们。但是,由于Apache作为Windows服务运行,Apache不仅需要重新启动,而且服务控制管理器也需要重新启动。(据我所知)重新启动服务控制管理器的唯一方法是重新启动计算机。


编辑系统PATH环境变量(无论如何在XP上):

  • 右键单击My Computer并选择Properties
  • 在出现的System Properties对话框中选择Advanced选项卡
  • 单击Environment Variables按钮
  • System variables列表中查找PATH
  • 单击Edit并添加您的目录