【问题标题】:Install postgresql with apache on Mac OSX在 Mac OSX 上使用 apache 安装 postgresql
【发布时间】:2016-04-24 14:38:31
【问题描述】:

我正在尝试使 postgresql 在我的 Mac OSX 上与 apache 一起工作。我使用 homebrew 来管理我所有的开发功能,所以我替换了 apache 提供的默认 php 版本并下载了 homebrew 版本,这部分工作得很好。问题是当我想安装 postgresql 扩展时..

我已经这样做了:

  • brew 安装 postgresql
  • brew install php55 --with-postgresql
  • brew install php55-pdo-pgsql

然后编辑 /etc/apache2/httpd.conf 文件,将 LoadModule php5_module libexec/apache2/libphp5.so 替换为 LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so。

然后当我执行 phpinfo() 命令时,我看不到 PDO 部分中安装的 postgresql 扩展。我只有这个:

如果有人可以帮忙 ;) 谢谢大家!

可能的解决方案: - 首先像这样安装所有数据包:brew install postgresql php55 php55-pdo-pgsql - 然后brew reinstall php55 --with-postgresql

而且它有效..我之前这样做过(可能不是相同的顺序)并且它不起作用,我不知道为什么它现在有效!

解决方案

当您查看 phpinfo() 结果时,您应该会看到类似 Loaded Configuration File 和 *Scan this dir for additional .ini files * 之类的内容。问题是您安装的每个扩展都有一个全局 php.ini 文件和一个 .ini 文件。 *Scan this dir for additional .ini files * 的值是扩展的 .ini 文件必须位于的位置。所以只需要创建一个 ext-pdo_pgsql.ini 并使用extension="path to your/pdo_pgsql.so" 加载扩展名(我的是/usr/local/opt/php55-pdo-pgsql/pdo_pgsql.so)。

安装只需要brew install php55 php55-pdo-pgsql postgresql

【问题讨论】:

    标签: php macos apache postgresql homebrew


    【解决方案1】:
    1. 运行php -m | grep pgsql以了解pgsql是否存在

    2. 按照此answer 中的示例进行操作。如果您对此处对应数字 4 的指令有疑问,请跳转到注释。

    3. 输入./configure --with-pdo-pgsql="path to postgres" 并返回。我的地址是"/usr/local/bin"。

    4. 输入make && sudo make install并返回。

    5. 使用sudo echo "extension=pdo_pgsql.so" >> path to php.ini 将扩展名添加到php.ini。使用php -i | grep php.ini查找路径

    6. 应该为 postgres 安装 pdo 驱动

    注意

    sudo make install 可能不起作用。这可能是由于称为 csrutil 的 OSX 功能所致。重启你的机器并按住cmd + R。从终端的恢复界面运行csrutil disable。

    再次重启并执行make install。通过在恢复界面的终端上运行 csrutil enable 重复与上一段相同的过程以启用 csrutil。

    【讨论】:

    • 感谢您的回答,我只是找不到第二步的目录。是在 /usr/local/opt 下还是附近?
    • 哦@ThomasCEDRINI。您可以通过使用 pear 并遵循此 answer 来实现 2。
    • 嗯..我不明白发生了什么..在安装 php5、php5-pdo-pgsql 和 postgresql 后,我刚刚完成了 'brew reinstall php55 --with-postgresql'和惊喜!有用 !我真的不明白为什么之前没有
    • 好的,我知道它是如何工作的 ;) 我更新了我的帖子
    猜你喜欢
    • 2011-11-10
    • 2016-05-04
    • 1970-01-01
    • 2015-09-01
    • 2010-11-11
    • 2012-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多