web-dev-qa-db-ja.com

ApacheなしでPhppgadminをインストールする

nginx + postgresqlテストサーバーをセットアップしようとしていますが、phppgadminをインストールしようとすると、Apache2をインストールしようとしますが、Apache2をインストールしたくありません。 Apacheなしでそれをインストールする方法?

4
user75973

パッケージが示すように(apt-cache show phppgadmin):

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

パッケージはApache2またはhttpdに依存します。 Apache2が優先されます。したがって、nginxは明示的に渡すだけでインストールできます。nginxhttpdを提供するためです(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で自分で試してみたところ、機能しないことがわかりました。明らかに、依存関係の1つはハードコードされており、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
4
0xC0000022L

Phppgadminをインストールするのにaptは必要ありません。

圧縮されたフォルダ 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はルートとして解凍されています。
    ユーザーをwww-dataに変更します:Sudo chown -R www-data phppgadmin
  • 詳細なインストール手順は here および here common issues にあります。

Apacheは推奨ではなく依存関係であるため、-no-install-recommendsを0xC0000022Lの推奨どおりに使用しても機能しません。
しかし、彼は問題を正しく説明しました。 aptを使用する場合、インストールはおそらく機能します。Apacheをインストールし、Apacheを実行できない場合はエラーになります。

1
SamGoody