我已经部署了一个PHP web应用程序连接到一个PostgreSQL在Azure网站。Azure网站不支持自定义系统级扩展,使用wwwroot
文件夹中的.user.ini
来启用。
我继续自定义PHP安装,并做了以下操作
- 按照bin PHP文件夹 的描述复制PHP二进制文件
在
binphpphp.ini
下修改过。-
extension=php_pdo_pgsql.dll
-
extension=php_pgsql.dll
-
在处理程序映射下增加
*.php*
键和值D:homesitewwwrootbinphpphp-cgi.exe
在
app settings
配置下增加了PHP扩展键PHP_EXTENSIONS
和值D:homesitewwwrootbinphpext
。
但是当我查看到PHPInfo()时,所有的细节都被配置为配置,但扩展没有加载。
我遵循这里提到的指南-使用自定义PHP运行时
如何解决这个问题?
你已经混合了两种不同的方式为Azure网站带来另一个动态扩展。
如果您将php_pdo_pgsql.dll
二进制文件上传到D:homesitewwwrootbin
,然后将PHP_Extensions
添加到应用程序设置中,值为binphp_pdo_pgsql.dll
,它应该可以解决您的问题。如果你想启用多个扩展,在同一个App Setting值字段
或者,你可以上传你自己的运行时,然后你可以完全控制php.ini,它包含在你上传运行时的目录中,如使用自定义php运行时
所述请注意,是两个单独的选项。