所以,我已经开始探索Azure,并尝试在我的免费Azure层上设置PHP,MySQL。
我在Azure上安装了WebApp,phpinfo()
即将推出。
我在设置ImageMagick时遇到了麻烦。
我正在使用默认的PHP 5.4.42 我从https://pecl.php.net/package/imagick/3.1.2/windows
下载了ImageMagick的扩展dll具体来说,我得到了http://windows.php.net/downloads/pecl/releases/imagick/3.1.2/php_imagick-3.1.2-5.4-nts-vc9-x86.zip文件,这是PHP 5.4的nts版本
接下来,我按照https://azure.microsoft.com/en-us/documentation/articles/web-sites-php-configure/
的步骤进行操作我在我的wwwroot文件夹下创建了一个名为' bin'的文件夹。所以现在mu站点路径看起来像/site/wwwroot/bin
。
在此bin文件夹中,我复制了php_imagick.dll
文件和其他8个Core_RL*.*
文件。
接下来,在我的Azure应用设置中,我添加了PHP_EXTENSIONS
密钥,值为bin\php_imagick.dll
然后我重新启动了我的网络应用程序,但我只在我的天蓝色日志中收到以下错误:
PHP警告:PHP启动:无法加载动态库' D:\ home \ site \ wwwroot \ bin \ php_imagick.dll' - 指定的模块无法找到。 在第0行的未知中
作为替代方案,现在我已将PHP版本更改为5.6(Azure上的最新版本),并已从pecl站点添加相应版本的imagick文件。这没有解决任何问题。
我还尝试了ini方法,在站点文件夹下创建了ext和ini文件夹,并创建了相应的' PHP_INI_SCAN_DIR'设置,但重新启动应用程序时,phpinfo()中没有任何内容。很伤心:(
请建议我可以尝试解决此问题。
答案 0 :(得分:2)
并非所有Imagemagick版本都兼容。 这是一个具有正确资源引用的回购https://github.com/snobu/php-imagick-webapps。
下载这些资源(NTS版本)
http://windows.php.net/downloads/pecl/releases/imagick/3.3.0rc2/php_imagick-3.3.0rc2-5.6-nts-vc11-x86.zip http://www.imagemagick.org/download/binaries/ImageMagick-6.9.2-8-Q16-x86-dll.exe
按照本文中的步骤进行操作,它只适用于http://blogs.msdn.com/b/azureossds/archive/2015/12/01/php-imagemagick-on-azure-web-apps.aspx