2

我正在尝试按照在 Windows Azure 网站中使用自定义 PHP 扩展下的说明为在 Azure 网站中运行的 PHP 启用 ionCube 扩展。这是我所做的:

  1. 从ionCube 加载程序下载页面下载了 Windows VC9 (Non-TS) (x86) 加载程序。
  2. 在 /site/wwwroot/bin 创建了一个目录
  3. FTP'dioncube_loader_win_5.3.dll到那个目录。
  4. PHP_EXTENSIONS在我添加了 value的网站的 Azure 门户中的“应用程序设置”下bin/ioncube_loader_win_5.3.dll
  5. 我加载了http://my.azure.website/info.php并验证了 Environment 表包含PHP_EXTENSIONS= bin/ioncube_loader_win_5.3.dll。它还包含APPSETTING_PHP_EXTENSIONS= bin/ioncube_loader_win_5.3.dll
  6. 当我尝试加载站点时,我收到消息“页面无法显示,因为发生了内部服务器错误”并且没有其他信息。

是我忘记了什么还是 Azure 不支持 ioncube?我是否正确设置了目录?

我也以同样的方式尝试了 Zend Guard Loader 扩展(ZendLoader.dll)。我没有收到错误消息,但扩展名也没有出现在 phpinfo() 中。

4

3 回答 3

2

我发布了一篇文章,解释了如何在 Windows Azure 网站上配置 ZendGuard

于 2013-08-12T15:58:34.920 回答
1

您不得模块放在 ftp 站点的根目录中。DLL 模块必须位于APPLICATION ROOT下的文件夹中,site/wwwroot/因此,您必须创建site/wwwroot/bin您选择的任何一个或任何内容(即site/wwwroot/phpext),然后将 PHP_EXTENSIONS 再次映射到bin/ioncube...phpext/iocube...),无论您的文件夹名称是什么! site/wwwroot/

但是,当启用上述模块时,我无法运行任何 php 页面。我不知道这是因为我的文件没有经过 ionCube 加密,还是因为 ionCube 本身存在问题。因此,如果您有一个 ionCube 加密文件,您就有机会进行测试。

于 2012-11-09T08:34:38.380 回答
1

ionCube 是 Zend 扩展,因此根据windows azure forums 的回答

正确的方法是创建/site/wwwroot/bin目录并上传ioncube_loader_win_5.4.dll,然后在门户应用程序设置下添加PHP_ZENDEXTENSIONS设置,并将bin\ioncube_loader_win_5.4.dll作为其值。

我确认,但我的测试是在/site/phpext应用程序设置上完成的..\phpext\ioncube_loader_win_5.4.dll

于 2014-03-07T23:39:18.473 回答