简体   繁体   中英

Apache 2.4 in Windows Server 2008 is not loading php_intl extension

I have this infrastructure:

  • PHP Version: 5.6.20
  • System: Windows NT SERVER1 6.1 build 7600 (Windows Server 2008 R2 Compiler: MSVC11 (Visual C++ 2012)
  • Architecture x64
  • Loaded Configuration: File C:\\php\\php.ini

Other tools:

  • Visual C++ Redistributable para Visual Studio 2012 Update 4 installed
  • Apache and PHP were installed individually

The extension php_intl.dll is never loaded, just this one. Others extensions are loaded cool. When I restart the apache I get this warning:

[Wed Jul 06 14:41:03.632426 2016] [mpm_winnt:notice] [pid 14964:tid 356] AH00418: Parent: Created child process 14992 PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\php\\ext\\php_intl.dll' - The specified module could not be found.\\r\\n in Unknown on line 0

The extension is there, so the ext's path is ok. Finally I went to Intl Pecl dowloadpage and looks like the repositories there are not compatible with Windows Server 2008.

I do not know what more to do in order to get this extension work.

Addional note : I have copied the Apache24/ and php/ dir into a Windows 7 machine 64x and the extension is loaded successfully

It is necessary to register the php instead php's extension path in Windows PATH enviroment variable.

C:\php

By this way the apache is able to load all icud*.dll files required by php_intl.dll . Credits by @Vrac

And and @Zak :

Make sure the PHP directory path is included in the system's PATH environmental variable so this set of provided/included ICU DLLs, that php_intl.dll depends on, are found

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM