phpMyAdmin tenta instalar o Apache

1

Estou a brincar com a instalação de novos ambientes no meu servidor, o servidor Web Nginx em conjunto com o HHVM.

Eu instalei os dois e, em seguida, acessei o MariaDB e o instalei também. Posso confirmar o funcionamento do servidor, batendo o endereço IP: Bem-vindo ao nginx!

Depois, precisei instalar um cliente baseado na Web para gerenciar bancos de dados. Eu sei que o phpMyAdmin funciona muito bem com o Apache e o Litespeed, mas como eu segui muitos artigos sobre a instalação do phpMyAdmin ao lado do Nginx, os passos eram quase os mesmos.

Mas o problema é fazer apt-get install phpmyadmin instalar o Apache também:

The following extra packages will be installed:
  apache2 apache2-bin apache2-data dbconfig-common libapache2-mod-php5 libapr1
  libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap libjs-codemirror
  libjs-jquery libjs-jquery-cookie libjs-jquery-event-drag
  libjs-jquery-metadata libjs-jquery-mousewheel libjs-jquery-tablesorter
  libjs-jquery-ui libjs-underscore php-gettext php5 php5-common php5-json
  php5-mcrypt php5-mysql

Ao confirmar a instalação, ele instalará e ativará os módulos do Apache:

[...]
Enabling module mpm_event.
Enabling module authz_core.
Enabling module authz_host.
Enabling module authn_core.
Enabling module auth_basic.
Enabling module access_compat.
Enabling module authn_file.
Enabling module authz_user.
Enabling module alias.
Enabling module dir.
Enabling module autoindex.
Enabling module env.
Enabling module mime.
Enabling module negotiation.
Enabling module setenvif.
Enabling module filter.
Enabling module deflate.
Enabling module status.
[...]

e, em seguida, lançando um erro que o Apache não conseguiu iniciar:

* Starting web server apache2                                                              AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using vultr.guest. Set the 'ServerName' directive globally to suppress this message
(98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
(98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
Action 'start' failed.
The Apache error log may have more information.
 *
 * The apache2 instance did not start within 20 seconds. Please read the log files to discover problems
invoke-rc.d: initscript apache2, action "start" failed.
Setting up dbconfig-common (1.8.47+nmu1) ...

Estou migrando do Apache para o Nginx, o que significa que não quero mais o Apache! É um comportamento padrão do phpMyAdmin? Enfim para rodar o phpMyAdmin com as versões mais recentes do Nginx e do HHVM?

    
por rev 12.12.2015 / 10:11

2 respostas

4

O motivo desse comportamento são as dependências de phpmyadmin (pelo menos em Debian e acho que é bastante semelhante em Ubuntu ):

# apt-cache show phpmyadmin | grep Depends:
libapache2-mod-php5 | libapache2-mod-php5filter | php5-cgi | php5-fpm | php5, php5-mysql | php5-mysqli | php5-mysqlnd, php5-mcrypt, php5-json, perl, debconf (>= 0.5) | debconf-2.0, libjs-sphinxdoc (>= 1.0), dbconfig-common, php-gettext, ucf (>= 0.28)

# apt-cache show libapache2-mod-php5 | grep Depends:
libbz2-1.0, libc6 (>= 2.15), libcomerr2 (>= 1.01), libdb5.3, libgssapi-krb5-2 (>= 1.6.dfsg.2), libk5crypto3 (>= 1.6.dfsg.2), libkrb5-3 (>= 1.6.dfsg.2), libonig2 (>= 5.9.5), libpcre3 (>= 1:8.35), libqdbm14 (>= 1.8.74), libssl1.0.0 (>= 1.0.1), libstdc++6 (>= 4.1.1), libxml2 (>= 2.9.0), zlib1g (>= 1:1.1.4), apache2-api-20120211, apache2 (>= 2.4), mime-support, php5-common (= 5.6.14+dfsg-0+deb8u1), php5-cli, php5-json, libmagic1, ucf, tzdata

Dentro da segunda lista de pacotes necessários, você encontrará apache2 , que instalará este pacote. Então, não muita mágica envolvida.

Se você instalar phpmyadmin como você fez, não será possível limpar apache2 posteriormente. Ao fazer isso, você também removerá phpmyadmin , porque as dependências não estão mais satisfeitas.

Então ... o que fazer, se você quer instalar phpmyadmin , mas ao mesmo tempo não quer instalar apache2 ? Não tão difícil assim:

phpmyadmin depende de vários pacotes que fornecem o php5 interpreter / libraries / modules. Como existem várias opções, cabe a você escolher. Você não precisa de todos esses pacotes, é mais como um "pacote OR this package OR that one". (Observe o | na listagem de pacotes obrigatórios de phpmyadmin .)

Então, você primeiro instala os pacotes necessários de php5 que não estão conectados a apache2 , e depois instala phpmyadmin :

# apt-get install php5-fpm
[...]
The following NEW packages will be installed:
   libonig2 libqdbm14 php5-common php5-fpm

# apt-get install phpmyadmin
[...]
The following NEW packages will be installed:
   dbconfig-common libltdl7 libmcrypt4 libmysqlclient18 mysql-common php5-mcrypt php5-mysql phpmyadmin

Se você tiver alguma dúvida adicional ou precisar de mais ajuda, informe-nos.

Editar : Com relação ao seu comentário sobre outros sistemas de gerenciamento de banco de dados baseados na Web: Você pode dar uma olhada em Administrador . Citando o site do projeto (não posso julgar isso por mim):

Replace phpMyAdmin with Adminer and you will get a tidier user interface, better support for MySQL features, higher performance and more security.

Existem Ubuntu packages disponíveis também .

    
por 12.12.2015 / 11:21
2

Eu meio que estou usando sua mesma pilha (então nenhum apache envolve). O que eu gosto de usar é

apt-get --no-install-recommends install phpmyadmin

E isso só instalará o phpmyadmin sem o apache

    
por 23.07.2016 / 23:14