我正在尝试设置一个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 peer
为local all all md5
- 如果出现 403 错误,则 phppgadmin 可能以 root 身份解压。
将用户更改为 www-data:sudo chown -R www-data phppgadmin
- 详细安装说明可以在这里找到这里, 和这里有常见问题。
按照 0xC0000022L 的建议使用 --no-install-recommends 不起作用,因为 Apache 是依赖项,而不是建议。
不过,他正确地解释了这个问题。如果你使用 apt,安装可能会成功,它只会安装 Apache,然后在 Apache 无法运行时出错。