Para instalar um servidor web no Ubuntu e hospedar vários sites é muito fácil, mas requer algumas configurações adicionais que não é preciso fazer se você pretende criar um servidor web para apenas um domínio.
Um servidor web no Ubuntu não tem necessidade de grandes configurações de hardware, claro levando em consideração um site com poucas visitas. Eu recebi algumas duvidas por email e por isso resolvi criar esse post para responder a mais de um leitor.
Perguntas frequentes:
- Como instalar um servidor web para hospedar o meu site?
- Como instalar um servidor web completo no Ubuntu?
- Como hospedar mais de um site no apache?
Coloquei um passo a passo nesse post, para você instalar um servidor web no Ubuntu onde será possível a hospedagem de vários sites com domínios diferentes.
Claro que eu preciso imaginar que você já tem um ou mais domínios registrados e que a configuração DNS desses domínios apontem para o servidor onde será feito essa configuração.
Estarei usando alguns comandos para instalar aplicativos no Ubuntu Linux, se você tiver alguma duvida nesses comandos, eu sugiro a você baixar o EBOOK DO CURSO LINUX UBUNTU, É GRÁTIS.
1) COMO INSTALAR UM SERVIDOR WEB NO UBUNTU
apt-get install php5 php5-mysql mysql-server
Muita calma nesse momento, apesar de não constar no comando acima, o Ubuntu vai instalar por padrão o servidor Web Apache2, fique tranquilo.
Esse comando vai instalar
- Servidor Web Apache2
- Módulo php5 para rodar sites criados em php, o CMS WordPress por exemplo.
- Servidor de banco de dados Mysql, você será questionado sobre a senha do usuário root do mysql.
2) CONFIGURAÇÃO DO APACHE PARA TRABALHAR COM VÁRIOS SITES
A Configuração do apache2, o nosso servidor web, está em /etc/apache2/
Abaixo, um arquivo de template para criação da configuração do apache2, onde será possível hospedar vários sites em um só servidor
vim /etc/apache2/sites-available/seu_site.com
Comece criando o arquivo conforme abaixo:
<VirtualHost *:80> ServerName dominio.net ServerAdmin webmaster@localhost
ServerAlias dominio.net www.dominio.net DocumentRoot /var/www/dominio.net
<Directory /> Options FollowSymLinks AllowOverride None </Directory>
<Directory /var/www/dominio.net> Options -Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory>
ErrorLog /var/log/apache2/error-dominio.net.log
# Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn
CustomLog /var/log/apache2/dominio.net.log combined
</VirtualHost>
Modifique esse arquivo de template conforme sua necessidade, apenas algumas observações.
A opção ServerName dominio.net, é o dominio do seu site, poderia ser um subdominio também, alguma coisa tipo ofertas.dominio.net
A opção DocumentRoot /var/www/dominio.net define o diretório onde será criado os arquivos do seu site, ou seja onde será instado o seu blog WordPress por exemplo.
3) APÓS INSTALAR O SERVIDOR WEB NO UBUNTU, DEVEMOS HABILITAR A NOVA CONFIGURAÇÃO
Esse arquivo de configuração ainda não está em uso, precisamos avisar para o apache que queremos habilitar outro site, para isso vamos usar o comando a2ensite.
cd /etc/apache2/sites-available/
a2ensite seu_site.com
4) HABILITAR O MOD REWRITE NO APACHE
Esse módulo fará a a reescrita das urls, será necessário para trabalhar com o wordpress
E executa o comando abaixo
cd /etc/apache2/mods-available
a2enmod rewrite
5) MUDAR PERMISSÃO DE ACESSO DO DIRETÓRIO DO SITE
Eu não pretendo discutir nada sobre segurança em sites agora, para facilitar nossa vida, vamos usar o usuário padrão do apache para mandar nesse diretório do nosso novo site.
mkdir /var/www/seu_site.com chown www-data:www-data -R /var/www/seu_site.com
6) INSTALAÇÃO DO PHPMYADMIN
Para acessar nosso servidor de banco de dados Mysql, vamos usar o phpmyadmin, ele é uma aplicação em php que irá facilitar nossa vida na hora de criar um banco de dados, fazer backup, criar comando sql e muito mais.
apt-get install phpmyadmin
Para acessar
http://ip-servidor/phpmyadmin/
7) CONFIGURAÇÃO DA AUTENTICAÇÃO PARA ACESSAR O PHPMYADMIN
Essa configuração é uma questão de segurança para o seu banco de dados, dessa forma para acessar o phpmyadmin será solicitado uma senha de autenticação no navegador.
Configuração no arquivo
vim /etc/phpmyadmin/apache.conf
No arquivo:
Na configuração: <Directory /usr/share/phpmyadmin>
Adicionar o linhas linhas:
<IfModule mod_authn_file.c> AuthType Basic AuthName "phpMyAdmin Setup" AuthUserFile /etc/phpmyadmin/htpasswd.setup </IfModule> Require valid-user
Agora, temos que criar o usuário, para fazer a autenticação, com o comando abaixo.
htpasswd htpasswd.setup seu_usuario
Dessa forma, quando acessar http://ip-servidor/phpmyadmin/ será solicitado a autenticação no navegador.
Depois dessa configuração, temos que reiniciar o apache com o comando abaixo:
/etc/init.d/apache2 restart
Então vamos recapitular o que fizemos até agora.
- Instalamos o Apache2, o nosso servidor web do Ubuntu.
- Instalamos também o php5, módulos necessários para rodar scripts em php e principalmente porque no futuro queremos instalar um site em WordPress.
- Instalar o servidor de banco de dados Mysql
- Foi instalado também o phpmyadmin, aplicação web para manipular nosso servidor de banco de dados
- Configuramos o servidor apache2 para trabalhar com vários sites em um único servidor, criando um arquivo de template para esse site que poderá ser replicado para diversos outros.
Sendo assim, temos um servidor Web completo rodando em Linux com a distribuição Ubuntu, capaz de hospedar vários sites em php5, com banco de dados Mysql.
Para mais explicações sobre comando Linux, baixe o EBOOK DO CURSO LINUX UBUNTU, É GRÁTIS.
E VOCÊ, JÁ CONFIGUROU UM SERVIDOR WEB ? O QUE ACHOU DESSE PEQUENO TUTORIAL. DEIXE UM COMENTARIO.
Valeu pessoal, até a próxima.
Pedro Delfino