Altere a porta phpMyAdmin de 80 para outro número

4

Como alterar a porta do phpMyAdmin de 80 para 99 ?

    
por Hesam Pourghazian 26.03.2017 / 07:49

2 respostas

5

Só para ficar claro, isso não é uma configuração do PhpMyAdmin, é uma configuração da configuração do Apache2 e precisamos criar um novo VirtualHost para essa finalidade.

1. Entendimento da configuração padrão do PhpMyAdmin. Por padrão (dentro do Ubuntu 16.04) PhpMyAdmin é incluído (e habilitado) na configuração do Apache ( para todos os VirtualHosts! ) através deste arquivo de configuração adicional:

/etc/apache2/conf-enabled/phpmyadmin.conf

Este arquivo é um simbólico link para o arquivo /etc/apache2/conf-available/phpmyadmin.conf , que é um link simbólico para o arquivo /etc/phpmyadmin/apache.conf , que será usado na próxima etapa.

2. Crie um novo arquivo de configuração do VirtualHost. Vamos chamá-lo de phpmyadmin.conf e criá-lo por nano (ou você pode usar o seu editor de texto favorito):

sudo nano /etc/apache2/sites-available/phpmyadmin.conf

O conteúdo deste arquivo deve se parecer com:

Listen 99

<VirtualHost *:99>

        ServerName localhost

        <Directory /usr/share/phpmyadmin>
                AllowOverride None
                Require all granted
        </Directory>

        DocumentRoot /usr/share/phpmyadmin

        Include /etc/phpmyadmin/apache.conf

        ErrorLog ${APACHE_LOG_DIR}/phpmyadmin.error.log
        CustomLog ${APACHE_LOG_DIR}/phpmyadmin.access.log combined

</VirtualHost>

Onde:

  • Listen 99 instrui o Apache2 a escutar na porta 99 . Assim como o @LDJames diz você pode colocar esta diretiva em /etc/apache2/ports.conf ou você pode deixá-la aqui;

  • <VirtualHost *:99>...</VirtualHost> define um VirtualHost que lidará com o formulário de solicitações todas as interfaces ( * ) na porta :99 .

  • ServerName localhost esta diretiva é opcional e pode ser personalizada de acordo às suas necessidades. (Geralmente, há ServerName definido no nível do servidor - em /etc/apache2/apache2.conf );

  • <Directory /usr/share/phpmyadmin>...</Directory> esta diretiva é opcional porque as permissões de acesso para /usr/share/ geralmente são definidos em /etc/apache2/apache2.conf . Mas você pode adicionar regras específicas aqui, por exemplo, você pode Set Up Password Authentication ;

  • DocumentRoot /usr/share/phpmyadmin esta diretiva define /usr/share/phpmyadmin como diretório que forma a árvore do documento principal visível a partir da web, para o VirtualHost atual;

  • Include /etc/phpmyadmin/apache.conf essa diretiva inclui a configuração padrão do phpMyAdmin no Apache configuração. Assim, /etc/phpmyadmin/apache.conf será incluído apenas para o VirtualHost atual! Em vez desta diretiva você pode copiar / colar o conteúdo de /etc/phpmyadmin/apache.conf neste lugar.

3. Troque a configuração do Apache e reinicie-o.

sudo a2disconf phpmyadmin
sudo a2ensite phpmyadmin
sudo systemctl restart apache2.service

Onde:

  • a2disconf phpmyadmin desativará a configuração padrão do phpMyAdmin, descrita em 1.
  • a2ensite phpmyadmin habilitará o novo VirtualHost, descrito em 2.

!!. Edite /etc/phpmyadmin/apache.conf e comente ( # ) a primeira diretiva Alias como a seguinte:

#Alias /phpmyadmin /usr/share/phpmyadmin

Esta etapa é opcional, mas caso contrário, http://localhost:99 e http://localhost:99/phpmyadmin fornecerão resultados idênticos, portanto, suponho que não precisamos disso:)

!!. Se você quiser que este novo VirtualHost seja acessível externamente, não se esqueça de adicionar a porta 99 às regras do seu firewall. Se você usar UFW , poderá fazer isso com este comando:

sudo ufw allow 99/tcp

Com iptables você pode fazer isso com este comando:

sudo iptables -A INPUT -p tcp -m tcp --dport 99 -j ACCEPT
    
por pa4080 26.03.2017 / 18:01
4

Adicionar acesso pela porta 99 é rápido e fácil

Adicione a porta 99 à sua configuração do Apache2. Edite /etc/apache2/ports.conf . Adicione a diretiva Listen 99 :

# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default.conf

Listen 80
Listen 99

&ltIfModule ssl_module&gt
    Listen 443
&lt/IfModule&gt

&ltIfModule mod_gnutls.c&gt
    Listen 443
&lt/IfModule&gt

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

Isso adiciona porta 99 ao acesso disponível. Para desativar a porta 80 onde você só pode ter acesso pela porta 99, comente ou remova o Listen 80 da configuração.

Desativar a porta padrão é um pouco mais detalhado

Na maioria das circunstâncias, a desativação da porta padrão 80 não é necessária.

Se você tiver outros sites, precisará acessar a porta 80 e a diretiva Listen para esse Virtualhost.

Alternativamente, você pode restringir o Phpmyadmin a apenas uma porta específica, criando um host de versão Phpmyadmin e usar a diretiva Listen 99 para esse host virtual.

Detalhes para a criação de um host virtual para o Apache2 podem ser encontrados aqui :

Crie um link simbólico para /usr/share/phpmyadmin o virtualhost document root .

    
por L. D. James 26.03.2017 / 09:28