Servidor LAMP com PHP7 no Linux Mint 18 e no Ubuntu 16.04

Como instalar um servidor LAMP, com PHP 7, para desenvolvimento web de forma rápida e fácil, no Linux Mint 18 e no Ubuntu 16.04.

[ Hits: 163.600 ]

Por: Lisandro Guerra em 04/08/2016 | Blog: https://spartanix.com/


Instalação / Ajustes



Instalação do LAMP e teste do Apache

O Linux Mint não tem o servidor LAMP para instalar direto no Gerenciador de Programas, teríamos que instalar programa por programa, mas como sabemos, o Mint usa os repositórios do Ubuntu, então podemos utilizar o mesmo método para ambos.

Pela linha de comando fica muito fácil instalar o servidor LAMP no Mint e no Ubuntu, como veremos.

1. Abra um terminal Ctrl+Alt+t e atualize o apt-get:

sudo apt-get update

2. Comece a instalação do servidor com o comando abaixo, sem esquecer o sinal ^ no final do comando:

sudo apt-get install lamp-server^

3. Durante o processo, abrirá um diálogo solicitando a senha de root para o MySQL e a confirmação de senha:
Linux: Servidor LAMP com PHP7 no Linux Mint 18 e no Ubuntu 16.04 Linux: Servidor LAMP com PHP7 no Linux Mint 18 e no Ubuntu 16.04

Após terminar a instalação, vamos testar se funcionou. Para testar se o Apache está rodando, abra um navegador e na barra de endereços, digite:
  • http://localhost
    ou:
  • http://127.0.0.1

O resultado deve ser uma tela informando que obtivemos sucesso, semelhante a esta abaixo.

Linux: Servidor LAMP com PHP7 no Linux Mint 18 e no Ubuntu 16.04
Tudo certo, vamos testar o restante.

Ajustes e demais testes

Para testar o MySQL, vamos abrir um terminal Ctrl+Alt+t verificar a situação do banco de dados e depois acessar obtendo a resposta, conforme segue:

sudo systemctl status mysql
Linux: Servidor LAMP com PHP7 no Linux Mint 18 e no Ubuntu 16.04
Para sair do relatório de status, pressionamos a letra q.

Agora, vamos acessar o banco de dados com a senha cadastrada na instalação, conforme o comando:

mysql -u root -p

O resultado deve ser algo como a imagem abaixo.
Linux: Servidor LAMP com PHP7 no Linux Mint 18 e no Ubuntu 16.04
Para sair do relatório de status, pressionamos a letra q.

Antes de testar o PHP, precisaremos fazer uns ajustes para permitir o acesso ao diretório onde colocaremos nossos arquivos de teste.

Normalmente, este diretório é /var/www, mas também pode ser /var/www/html, por exemplo. Por padrão, este diretório só pode ser escrito pelo root e para ficar mais prático, no nosso caso que é para desenvolvimento, é interessante que possamos acessar com o nosso usuário.

Para isso, vamos mudar o dono do diretório e suas permissões abrindo um terminal Ctrl+Alt+t e usando os comandos:

sudo chown -c -R seu_usuario /var/www/

sudo chmod -R 755 /var/www/

Ao executar esta mudança, é melhor reiniciar o Apache com o comando:

sudo systemctl restart apache2

Feito isso, já podemos testar o PHP, para o teste vamos criar um arquivo com nome info.php no diretório com o seguinte conteúdo:

<?php
phpinfo();
?>

Agora, no navegador de internet, chamamos o arquivo PHP com o endereço:
  • http://localhost/info.php
    ou:
  • http://127.0.0.1/info.php

O resultado deve ser algo como:
Linux: Servidor LAMP com PHP7 no Linux Mint 18 e no Ubuntu 16.04
Agora podemos até fazer um teste conjunto. Vamos criar um arquivo PHP com o nome testemysql.php com o conteúdo:

<?php
      $conecta = mysqli_connect("localhost","root","senha");
           if (!$conecta){
                      die('Impossivel conectar: ' . mysqli_error());
          }
            else{
                      echo "Conexao estabelecida com sucesso.";
          }
      mysqli_close($conecta);
?>

Não esqueça de substituir a palavra "senha" pela senha que você configurou na instalação.

Ao chamar no navegador, pelos endereços abaixo, uma mensagem de sucesso deve ser apresentada.
  • http://localhost/testemysql.php
    ou:
  • http://127.0.0.1/testemysql.php

Tudo testado, vamos ao bônus.

Página anterior     Próxima página

Páginas do artigo
   1. O que é um servidor LAMP
   2. Instalação / Ajustes
   3. Phpmyadmin
Outros artigos deste autor

Gerenciando o HD com o fdisk

Como matar um processo - kill, killall, pkill e xkill

Arduino IDE no Linux Mint

Exemplos práticos de comandos com Parted

Modificando o TimeZone: 2 métodos

Leitura recomendada

VPN no CentOS 5 - via Yum

OpenNebula - Gerenciamento de nuvens privadas e públicas

Geekbench - Testando o Desempenho do Linux

Formatação especial no Open Office

CrossOver - Programas de Windows em seu GNU/Linux

  
Comentários
[1] Comentário enviado por J0taLinux_981 em 04/08/2016 - 10:55h

Parabens pelo post. Gostei muito. No entanto, ao tentar instalar e configurar o phpmyadmin com a linha de comando abaixo:
Include /etc/phpmyadmin/apache.conf
O apache para de funcionar e não consigo mais trabalhar com ele. Uso Mint 17.1.
Este é o final do arquivo conf:
# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

#aqui acrescento o comando
Include /etc/phpmyadmin/apache.conf
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

não abre a página, aparece isso:

addJSON( 'options', PMA_RecentTable::getInstance()->getHtmlSelectOption() ); exit; } if ($GLOBALS['PMA_Config']->isGitRevision()) { if (isset($_REQUEST['git_revision']) && $GLOBALS['is_ajax_request'] == true) { PMA_printGitRevision(); exit; } echo '
'; } // Handles some variables that may have been sent by the calling script $GLOBALS['db'] = ''; $GLOBALS['table'] = ''; $show_query = '1'; // Any message to display? if (! empty($message)) { echo PMA_Util::getMessage($message); unset($message); } $common_url_query = PMA_generate_common_url('', ''); // when $server > 0, a server has been chosen so we can display // all MySQL-related information if ($server > 0) { include 'libraries/server_common.inc.php'; include 'libraries/StorageEngine.class.php'; // Use the verbose name of the server instead of the hostname // if a value is set $server_info = ''; if (! empty($cfg['Server']['verbose'])) { $server_info .= htmlspecialchars($cfg['Server']['verbose']); if ($GLOBALS['cfg']['ShowServerInfo']) { $server_info .= ' ('; } } if ($GLOBALS['cfg']['ShowServerInfo'] || empty($cfg['Server']['verbose'])) { $server_info .= PMA_DBI_get_host_info(); } if (! empty($cfg['Server']['verbose']) && $GLOBALS['cfg']['ShowServerInfo']) { $server_info .= ')'; } $mysql_cur_user_and_host = PMA_DBI_fetch_value('SELECT USER();'); // should we add the port info here? $short_server_info = (!empty($GLOBALS['cfg']['Server']['verbose']) ? $GLOBALS['cfg']['Server']['verbose'] : $GLOBALS['cfg']['Server']['host']); } echo '
' . "\n"; echo '
'; if ($server > 0 || count($cfg['Servers']) > 1 ) { echo '
'; echo ' [...]
Você poderia me ajudar? Aguardo resposta.


[2] Comentário enviado por Lisandro em 04/08/2016 - 17:16h


[1] Comentário enviado por J0taLinux_981 em 04/08/2016 - 10:55h

Parabens pelo post. Gostei muito. No entanto, ao tentar instalar e configurar o phpmyadmin com a linha de comando abaixo:
Include /etc/phpmyadmin/apache.conf
O apache para de funcionar e não consigo mais trabalhar com ele. Uso Mint 17.1.
Este é o final do arquivo conf:
# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf
# Include the virtual host configurations:
IncludeOptional sites-enabled/*.conf

#aqui acrescento o comando
Include /etc/phpmyadmin/apache.conf
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet

não abre a página, aparece isso:

addJSON( 'options', PMA_RecentTable::getInstance()-&gt;getHtmlSelectOption() ); exit; } if ($GLOBALS['PMA_Config']-&gt;isGitRevision()) { if (isset($_REQUEST['git_revision']) &amp;&amp; $GLOBALS['is_ajax_request'] == true) { PMA_printGitRevision(); exit; } echo '
'; } // Handles some variables that may have been sent by the calling script $GLOBALS['db'] = ''; $GLOBALS['table'] = ''; $show_query = '1'; // Any message to display? if (! empty($message)) { echo PMA_Util::getMessage($message); unset($message); } $common_url_query = PMA_generate_common_url('', ''); // when $server &gt; 0, a server has been chosen so we can display // all MySQL-related information if ($server &gt; 0) { include 'libraries/server_common.inc.php'; include 'libraries/StorageEngine.class.php'; // Use the verbose name of the server instead of the hostname // if a value is set $server_info = ''; if (! empty($cfg['Server']['verbose'])) { $server_info .= htmlspecialchars($cfg['Server']['verbose']); if ($GLOBALS['cfg']['ShowServerInfo']) { $server_info .= ' ('; } } if ($GLOBALS['cfg']['ShowServerInfo'] || empty($cfg['Server']['verbose'])) { $server_info .= PMA_DBI_get_host_info(); } if (! empty($cfg['Server']['verbose']) &amp;&amp; $GLOBALS['cfg']['ShowServerInfo']) { $server_info .= ')'; } $mysql_cur_user_and_host = PMA_DBI_fetch_value('SELECT USER();'); // should we add the port info here? $short_server_info = (!empty($GLOBALS['cfg']['Server']['verbose']) ? $GLOBALS['cfg']['Server']['verbose'] : $GLOBALS['cfg']['Server']['host']); } echo '
' . "\n"; echo '
'; if ($server &gt; 0 || count($cfg['Servers']) &gt; 1 ) { echo '
'; echo ' [...]
Você poderia me ajudar? Aguardo resposta.




Teu arquivo parece estar ok.
Tenta desinstalar o phpmyadmin e ver se o apache volta a funcionar ai reinstala ele.
Antes é bom dar uma revisada se fez todos os passos da instalação, vi um erro semelhante relatado lá no forum do Mint em que o cara teve que desinstalar, purge e tal e depois reinstalar e ai foi tranquilo.

Abraço

[3] Comentário enviado por J0taLinux_981 em 06/08/2016 - 17:46h

Novamente Parabens pelo post Lisandro. Utilizei o --purge e começei de novo. Sem problemas. Obrigado pelo post e a ajuda.

[4] Comentário enviado por manck_ap em 29/08/2016 - 01:03h

parabéns pelo post, tudo funcionando perfeitamente. obrigado.

[5] Comentário enviado por jcandido55 em 15/09/2016 - 16:17h

Parabéns Lisandro pelo artigo. Aqui, no Linux Mint 18, tudo funcionou perfeitamente. Um grande abraço.

[6] Comentário enviado por lcsantos300 em 12/02/2017 - 16:55h

Excelente artigo, Lisandro. Sua didática foi ótima e o seu passo a passo fantástico. Uso o Linux Mint 18.1 e tudo correu perfeitamente. Abraços e obrigado!

[7] Comentário enviado por mbrainiac em 19/02/2017 - 16:50h

Lisandro poderia me dar uma ajuda?

Estou começando a ver PHP e me enrolei na instalação do apache

Vou sercondenado a usar o win7 e Xampp por não conseguir fazer isto no Ubuntu e cada tutorial na net mexo e nada;

quando digito http://http://localhost/info.php aparece
403 forbidden
Forbidden

You don't have permission to access /info.php on this server.
Apache/2.4.18 (Ubuntu) Server at localhost Port 80

Se puder me dar uma força até apago tudo e começo do zero, só me dizer como apago tudo

[8] Comentário enviado por Lisandro em 21/02/2017 - 13:43h


[7] Comentário enviado por mbrainiac em 19/02/2017 - 16:50h

Lisandro poderia me dar uma ajuda?

Estou começando a ver PHP e me enrolei na instalação do apache

Vou sercondenado a usar o win7 e Xampp por não conseguir fazer isto no Ubuntu e cada tutorial na net mexo e nada;

quando digito http://http://localhost/info.php aparece
403 forbidden
Forbidden

You don't have permission to access /info.php on this server.
Apache/2.4.18 (Ubuntu) Server at localhost Port 80

Se puder me dar uma força até apago tudo e começo do zero, só me dizer como apago tudo



403 quer dizer que o servidor entendeu a requisição mas não pode servir por falta de privilégios de acesso.
Verifique as permissões do arquivo pasta e do arquivo info.php
Se estiver na pasta www, você seguiu estes passos?
[code]
$ sudo chown -c -R seu_usuario /var/www/
$ sudo chmod -R 755 /var/www/
$ sudo systemctl restart apache2
[/code]

[9] Comentário enviado por removido em 07/03/2017 - 02:25h

Tudo funciona perfeitamente até na hora de reiniciar o apache:

juvenil@Juvenil-PC ~ $ sudo chmod -R 755 /var/www/
juvenil@Juvenil-PC ~ $ sudo systemctl restart apache2
Job for apache2.service failed because the control process exited with error code. See "systemctl status apache2.service" and "journalctl -xe" for details.
juvenil@Juvenil-PC ~ $

Não faço nem ideia do que fazer.

[10] Comentário enviado por removido em 07/03/2017 - 13:51h

Acabei instalando o Nginx

[11] Comentário enviado por Lisandro em 07/03/2017 - 21:32h


[9] Comentário enviado por Juvenil-Wille em 07/03/2017 - 02:25h

Tudo funciona perfeitamente até na hora de reiniciar o apache:

juvenil@Juvenil-PC ~ $ sudo chmod -R 755 /var/www/
juvenil@Juvenil-PC ~ $ sudo systemctl restart apache2
Job for apache2.service failed because the control process exited with error code. See "systemctl status apache2.service" and "journalctl -xe" for details.
juvenil@Juvenil-PC ~ $

Não faço nem ideia do que fazer.


Tente fazer:
[code]$ sudo systemctl stop apache2[/code]
Depois:
[code]$ sudo systemctl start apache2[/code]

O efeito é o mesmo e depois pode investigar o que pode estar acontecendo.

[12] Comentário enviado por edsonfrs em 24/06/2017 - 15:46h

Lisandro,

Muito obrigado. Tutorial perfeito. Configurei meu notebook sem nenhum problema. Novamente muito obrigado.

[13] Comentário enviado por VFKami em 19/07/2017 - 15:43h

Obrigado pelo post, me ajudou demais

[14] Comentário enviado por gabriel-ubuntu em 28/08/2017 - 09:37h

Tive problemas com a instalação do phpmyadmin no ubuntu 17.04, para que ele funcionasse segui o conselho que o amigo macquley passou em uma pergunta do fórum:

Uma segunda e melhor solução
fazer uma alias no arquivo /etc/apache2/apache2.conf basta adicionar as seguintes linhas no final do documento

Alias /phpmyadmin /usr/share/phpmyadmin

<Directory /usr/share/phpmyadmin>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts