Como Instalar CORRETAMENTE o LAMP com Laravel no Debian GNU/Linux

Tudo em uma única vez.


Como Instalar CORRETAMENTE o LAMP com Laravel no Debian GNU/Linux

Pra quem encontra dificuldade em “montar” o ambiente de desenvolvimento LAMP( Linux , Apache , MySQL e PHP ), esse procedimento auxilia de forma definitiva.

Em vez do MySQL utilizamos o MariaDB , nesse artigo há uma explicação das diferenças entre ambos: Diferenças entre MySQL e MariaDB.

Em resumo, são 6 Etapas!

1. Atualização do sistema e Instalação dos Pacotes Básicos

sudo apt update && sudo apt upgrade
sudo apt install apache2 php7.3 php-mysql mariadb-client mariadb-server
sudo chown -R $USER:$USER /var/www/html/
cd /var/www/html/
rm index.html
cat <<EOF > index.php
<?php
  echo "Tah funfando!";
?>

Depois acesse o endereço: http://localhost e verifique se está rodando o server.

Parte 2 - Conectando ao MySQL/MariaDB

sudo mysql_secure_installation
# Crie uma senha, ex.: 123456
# Responda as perguntas, ex.:
n
n
n
n
y
sudo mysql -u root -p
123456

Parte 3 - Conectar sem o sudo

sudo mysql -u root -p
123456

MariaDB [(none)]> 
  use mysql;
  flush privileges;
  update user set plugin='mysql_native_password' where User='root';
  flush privileges;
  exit
sudo systemctl restart mysql.service
sudo systemctl restart mariadb.service
mysql -u root

MariaDB [(none)]> 
  use mysql;
  ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
  exit
mysql -u root -p
Enter password:

MariaDB [(none)]> 

Parte 4 - Testar conexão do PHP ao MariaDB/MySQL com PDO

<?php

	class Connect {
		
		static function conn(){
			try{

				if( !isset($pdo) ){
					$pdo = new PDO('mysql:host=localhost;dbname=mysql', 'root', '123456');
					return $pdo;
				}
			
			}catch( PDOException $e){
				die("Sistema indisponivel, consulte o administrador");
			}
		}
		
	}

	class Select extends Connect{
		public function test(){
			$sql = "SELECT Host,User,Password FROM user";
			$query = self::conn()->prepare($sql);
			$query->execute();
			//return ( $query->rowCount() > 0 ) ? TRUE : FALSE;
			return $query->fetch(PDO::FETCH_ASSOC);
		}
	}


	$obj = new Select;
	//echo ( $obj->test() ) ? "Tudo ok!" : "Falha.";
	//echo "<pre>";
	//var_dump( $obj->test()  );
	$r = $obj->test();
	echo "HOST: " . $r['Host'];
	echo '<br>';
	echo "USER: " . $r['User'];
	echo '<br>';
	echo "PASS: " . $r['Password'];


?>

Parte 5 - Instalar o PHPMyAdmin

vim /etc/apt/sources.list
# copie a linha do main e altere para buster-backports
sudo apt install -t buster-backports phpmyadmin
# Se houver problema ao configurar o usuário tente novamente com Socket UNIX e com TCP/IP, se ainda permanecer, somente aborte

Depois acesse o endereço http://localhost/phpmyadmin e logue com usuário e senha do seu MariaDB.

Parte 6 - Instalar o Composer e o Laravel

Para instalar o Composer rode os comandos abaixo:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'c31c1e292ad7be5f49291169c0ac8f683499edddcfd4e42232982d0fd193004208a58ff6f353fde0012d35fdd72bc394') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Para instalar o Laravel e adicioná-lo à sua variável $PATH como alias, rode:

composer -vvv global require laravel/installer
ls .config/composer/vendor/bin/laravel >> .bashrc
alias laravel="${HOME}/.config/composer/vendor/bin/laravel"
exec $SHELL
laravel new blog
# primeira vez que executa demora mesmo, mas as próximas são mais rápidas
cd blog
php artisan serve
http://localhost:8000

Assista ao vídeo

Se você ainda não sabe, ou se sente inseguro em MySQL/MariaDB sugiro você fazer nosso Curso de Desenvolvimento Web do Zero - PHP & MySQL que além de MySQL/MariaDB você vai aprender PHP do jeito certo! Além de:

  • Programação Orientada a Objetos;
  • Wordpress;
  • Laravel;
  • Composer;
  • Psy Shell;
  • PHP-GTK;
  • Redirecionamento sem alterar a URL;
  • PHPMailer;
  • Deploy de PHP puro e de Laravel na Heroku;
  • E muito mais!

É recomendado também pra quem não sabe nada, pois o curso inclui: HTML e CSS, Javascript, Bootstrap, Jekyll, GitHub, Gitlab e Netlify.

Corre que ainda dá tempo! Clique aqui para saber mais sobre o curso.


laravel php mariadb mysql apache phpmyadmin


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo

Artigos Relacionados




Pacote Promocional com Todos os Cursos

Adquira todos os cursos para se tornar um ninja do Terminal e do Linux.

Mais detalhes

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!


caso queira entrar em contato conosco, envie-nos um e-mail.