无需 apache 安装 Phppgadmin

无需 apache 安装 Phppgadmin

我正在尝试设置一个nginx+postgresql测试服务器,但是当我尝试安装时,phppgadmin它会尝试安装apache2,但我不想安装apache2,有没有办法在不使用 apache 的情况下安装它?

答案1

如包装所示(apt-cache show phppgadmin):

Depends: libapache2-mod-php5 | php5-cgi, php5-pgsql, apache2 | httpd, libjs-jquery

该软件包依赖于apache2 或者 httpd。它将有利于apache2。因此,只需nginx明确传递,它就应该安装,因为nginx提供httpd(参见 的输出apt-cache showpkg httpd)。

$ apt-cache showpkg httpd|grep nginx
nginx-naxsi 1.4.6-1ubuntu3
nginx-light 1.4.6-1ubuntu3
nginx-full 1.4.6-1ubuntu3
nginx-extras 1.4.6-1ubuntu3
nginx-core 1.4.6-1ubuntu3

编辑:

我自己在 Ubuntu 14.04 上尝试过,结果发现它不起作用。显然其中一个依赖项是硬编码的,而不是httpd仅绑定到。大概是因为除了 Apache 之外没有其他配置?无论如何,我开始找出答案,结果发现Depends上面的那行是关键。它不仅仅是apache2 | httpd,而且也是libapache2-mod-php5 | php5-cgi。所以我们也需要明确这些事情。

该包apt-rdepends显示了正在发生的事情:

$ apt-rdepends phppgadmin|grep apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
  Depends: apache2
  Depends: libapache2-mod-php5
apache2
  Depends: apache2-bin (= 2.4.7-1ubuntu4)
  Depends: apache2-data (= 2.4.7-1ubuntu4)
apache2-bin
apache2-data
libapache2-mod-php5
  Depends: apache2 (>= 2.4)
  Depends: apache2-api-20120211
apache2-api-20120211

libapache2-mod-php5行也可以在的依赖项中找到,phppgadmin并且是这里的问题。

因此我们最终得到:

$ apt-get install --no-install-recommends nginx php5-cgi phppgadmin

答案2

您不需要 apt 来安装 phppgadmin。

下载压缩文件夹来自 sourceforge并解压到根目录(或解压到您符号链接到根目录的文件夹)。
这就是您启动和运行所需的全部内容。以下几点可能会有所帮助:

  • PhpPgAdmin 除了需要 postgres 之外还需要另一个用户。在 Linux 中:
    $ sudo -u postgres createuser --superuser --pwprompt dev
  • 如果出现login failed,则可能是通过 Unix 套接字连接的。
    编辑 pg_hba.conf (/etc/postgresql/9.x/main/pg_hba.conf)。将其
    替换local all all peerlocal all all md5
  • 如果出现 403 错误,则 phppgadmin 可能以 root 身份解压。
    将用户更改为 www-data:sudo chown -R www-data phppgadmin
  • 详细安装说明可以在这里找到这里, 和这里有常见问题

按照 0xC0000022L 的建议使用 --no-install-recommends 不起作用,因为 Apache 是依赖项,而不是建议。
不过,他正确地解释了这个问题。如果你使用 apt,安装可能会成功,它只会安装 Apache,然后在 Apache 无法运行时出错。

相关内容