Servidor Web: mudanças entre as edições

De Wiki Cursos IFPR Foz
Ir para navegaçãoIr para pesquisar
Linha 50: Linha 50:


====Sites hospedados====
====Sites hospedados====
O diretório '''sites-available''' contém a configuração dos sites hospedados, incluindo as seguintes informações:
O '''apache''' pode armazenar vários sites simultaneamente, cada um representado por um arquivo de configuração no diretório '''sites-available'''.  
*O nome de domínio servidor: como www.ifpr.edu.br
*Portas TCP que ele atende requisições: A porta default é a porta 80, mas outras portas podem ser especificadas.
*Onde estão os documentos que compõem o site hospedado: o caminho do diretório onde estão esses documentos.
*Quem pode acessar os documentos: restrições baseadas em endereços IP de clientes e/ou nomes de usuários e grupos.


Para armazenar vários sites simultaneamente é necessário criar um endereço '''IP alias''', por exemplo:
ifconfig eth0:0 192.168.10.100 netmask 255.255.255.0


Para tornar o '''IP alias''' permanente deve editar o arquivo
/etc/network/interfaces
:e acrescentar as seguintes informações:
auto eth0:1
iface eth0:1 inet static
address 192.168.10.100
netmask 255.255.255.0
broadcast 192.168.10.255
network 192.168.10.0
:Salvar o arquivo e reiniciar a configuração de rede com o comando:
/etc/init.d/networking restart


Exemplo de configuração:
Cria-se então um '''arquivo de configuração''' para o site, por exemplo site.conf, a armazena o mesmo no diretório '''sites-available''', por exemplo:
 
  <VirtualHost 192.168.10.100:80>
 
  <VirtualHost enderecoIP:80>
   # O nome de servidor
   # O nome de servidor
   ServerName www.example.com
   ServerName www.example.com

Edição das 22h10min de 16 de dezembro de 2015

Servidor Apache

O servidor Apache é um servidor web livre amplamente utilizado na Internet.

O Apache implementa o lado servidor da Aplicação Web e atende requisições de clientes Web, ou navegadores, através do Protocolo HTTP (HyperText Transfer Protocol).

O Apache pode transferir para o cliente Web diferentes tipos de documentos, incluindo páginas HTML (Hipertext Meta Language), arquivos em formato PDF, arquivos de imagens, etc.

Um documento pode ser um simples arquivo em disco, mas também pode ser gerado dinamicamente através de tecnologias Web como PHP, JSP, ASP e outras. Estas tecnologias se caracterizam por uma linguagem de programação integrada ao servidor web, obtendo dele informação sobre como gerar o conteúdo da resposta [1].

Instalação e configuração do Apache no Ubuntu

Instalação
sudo apt-get install apache2

Uma vez instalado o servidor Web já estará funcionando com um página Web básica, chamada index.html, localizada no diretório:

/var/www/http/

O servidor Web poderá ser testado com um navegador utilizando o endereço de loopback 127.0.0.1 (na própria máquina) ou através do endereço IP da máquina em uma rede.

Para o gerenciamento do apache deve instalar também alguns utilitários, disponíveis no pacote:

sudo apt-get install apache2-utils

Configuração e organização dos arquivos

O apache é um aplicativo modular e se limita a executar a tarefa de entregar páginas HTML ou outros tipos de arquivos a clientes. Qualquer outra tarefa é executada por módulos externos.

Por exemplo, para acesso a uma página PHP, o servidor apache repassa a requisição para o módulo mod_php, que aciona o interpretador PHP que processa a página e entrega ao apache para este entregar ao cliente [2].

Arquivos de condfiguração
Os arquivos de configuração do apache também são modulares e estão organizados dentro do diretório /etc/apache2:
/etc/apache2/
            +- apache2.conf
            +- ports.conf
            +- sites-available/
            +- sites-enabled/
            +- mods-available/
            +- mods-enabled/
            +- conf-available/
            +- conf-enabled/
  • O arquivo apache2.conf contem condfigurações diversas do servidor;
  • O arquivo ports.conf contem a configuração das portas TCP que o servidor vai escutar;
  • Os diretórios sites-available e sites-enabled contém a configuração dos sites hospedados;
  • Os diretórios mods-available e mods-enabled contém a configuração dos módulos.

Sites hospedados

O apache pode armazenar vários sites simultaneamente, cada um representado por um arquivo de configuração no diretório sites-available.

Para armazenar vários sites simultaneamente é necessário criar um endereço IP alias, por exemplo:

ifconfig eth0:0 192.168.10.100 netmask 255.255.255.0

Para tornar o IP alias permanente deve editar o arquivo

/etc/network/interfaces
e acrescentar as seguintes informações:
auto eth0:1
iface eth0:1 inet static
address 192.168.10.100
netmask 255.255.255.0
broadcast 192.168.10.255
network 192.168.10.0
Salvar o arquivo e reiniciar a configuração de rede com o comando:
/etc/init.d/networking restart

Cria-se então um arquivo de configuração para o site, por exemplo site.conf, a armazena o mesmo no diretório sites-available, por exemplo:

<VirtualHost 192.168.10.100:80>
  # O nome de servidor
  ServerName www.example.com

  #Administrador do site
  ServerAdmin webmaster@localhost
  # Diretório onde estão os documentos desse site
  DocumentRoot /var/www/html

  # As restrições de acesso aos documentos
  <Directory /var/www/ger>
    Options Indexes
    DirectoryIndex index.html index.php
    order allow,deny
    allow from all
  </Directory>
 
</VirtualHost>

Referências

  1. VALLE, O. T. Gerência de Redes, Diário Aula, 2014. http://wiki.sj.ifsc.edu.br/wiki/index.php/GER20706-2014-1
  2. MORIMOTO, C. E. Seridores Linux: Guia prático, Sul Editores, Porto Alegre, 2013.

--Evandro.cantu (discussão) 09h04min de 16 de dezembro de 2015 (BRST)