Something here

Instalar Apache2 + Php + MySQL no Debian

Feb 25, 2015 | Tags: , , | Categoria: Debian

Fazer do seu pc web server é muito easy, nesse tutorial vou ensinar a instalar, configurar, habilitar mod_rewrite, e deixar tudo funcionando para o seu web server caseiro.

 

1. Instalar MySQL

apt-get update && apt-get install mysql-server mysql-client

Vai aparecer uma tela de configuração do mysql-server, pedindo para você criar uma senha para o user root.

2. Instalar Apache2

apt-get install apache2

Teste em seu navegador http://127.0.0.1/, se aparecer a mensagem “It works!“, está funcionando 😀

3. Instalar o Php5

apt-get install php5 php5-common libapache2-mod-php5 php5-cli php5-mysql

Para testar o seu php e as funcionalidades disponíveis nele vamos criar um arquivo.

nano /var/www/info.php

Estou usando o nano, direto no terminal para criar o arquivo info.php, você pode usar o editor que achar melhor.

<?php
phpinfo();
?>

Screenshot

4. Módulos de integração php

E agora, você pode instalar algum outro modulo de integração do php, aqui vai uma lista deles:

php5-adodb – Extensão otimizar o banco de dados ADOdb
php5-auth-pam – Uma extensão do PHP5 para autenticação PAM
php5-cgi – Módulo fcgid
php5-cli –
php5-common –
php5-curl – Módulo CURL para php5
php5-dbg – Símbolos de depuração para PHP5
php5-dev –
php5-enchant –
php5-exactimage –
php5-ffmpeg – biblioteca de manipulação de imagem (ligações PHP)
php5-gd – Módulo GD para php5
php5-geoip –
php5-gmp –
php5-idn –
php5-imagick –
php5-imap –
php5-interbase –
php5-intl –
php5-json –
php5-lasso –
php5-ldap –
php5-librdf –
php5-mapscript –
php5-mcrypt –
php5-memcache –
php5-mhash –
php5-ming –
php5-mssql –
php5-mysql – Módulo MySQL para php5
php5-odbc – Módulo ODBC para php5
php5-pgsql – Módulo PostgreeSQL para php5
php5-ps –
php5-pspell –
php5-radius –
php5-recode –
php5-remctl –
php5-sasl –
php5-snmp –
php5-sqlite –
php5-suhosin –
php5-svn –
php5-tidy –
php5-tokyo-tyrant –
php5-uuid –
php5-xcache –
php5-xdebug –
php5-xmlrpc –
php5-xsl –

5. Habilitar mod_rewrite no Apache2

a2enmod rewrite

Agora temos que abrir o arquivo de configuração:

nano /etc/apache2/apache2.conf

Mude todas as linhas que tiver escrito “AllowOverride None” para AllowOverride all.

Salve o arquivo e reinicie o Apache:

/etc/init.d/apache2 restart

6. Script para iniciar e desligar seu Web Server

Quanto você instala apache, mysql no seu notebook e isso reinicia com o sistema, acaba usando um pouco de memória e recurso, por ex, agora em meu computador, mysql está utilizando 300 mb de memória, e nem estou usando, isso no notebook, vai ajudar a acabar com a bateria.

Primeiro vamos remover a inicialização automatica.

update-rc.d apache2 remove && update-rc.d mysql remove

Agora o script, eu configurei ele nas minhas teclas de atalho, facilita, mas você pode criar um launcher no menu ou área de trabalho, e estarei usando o pacote de notificação, notify-send:

#!/bin/bash
env DISPLAY=:0.0 sudo -u SEUUSER notify-send -i emblem-synchronizing -t 666 "Apache And Mysql:" "Script in execution..."

if /etc/init.d/apache2 status > /dev/null;
then /etc/init.d/apache2 stop > /dev/null;
env DISPLAY=:0.0 sudo -u SEUUSER notify-send -i emblem-ohno -t 2000 "Apache Offline!";
else /etc/init.d/apache2 start > /dev/null;
env DISPLAY=:0.0 sudo -u SEUUSER notify-send -i help-about -t 2000 "Apache Online!";
fi

if /etc/init.d/mysql status > /dev/null;
then /etc/init.d/mysql stop > /dev/null;
env DISPLAY=:0.0 sudo -u SEUUSER notify-send -i emblem-ohno -t 2000 "Mysql Offline!";
else /etc/init.d/mysql start > /dev/null;
env DISPLAY=:0.0 sudo -u SEUUSER notify-send -i help-about -t 2000 "Mysql Online!";
fi

Agora vamos adicionar algumas linhas no visudo para garantir que seu usuário tenha permissão para iniciar e pausar o mysql e apache.

visudo

Adicione esta linha e salve:

%SEUUSER ALL = NOPASSWD: /bin/bash,/etc/init.d/apache2,/etc/init.d/mysql

E é isso 🙂 enjoy.