150 likes | 381 Views
Apache. Apache, O que é?. Apache foi um desenvolvimento do servidor http da NCSA (National Center for Super Computer Applications) de 1994 O nome é uma corruptela de A Patchy, por que o programa no início sofreu muitas correções (patches) Endereço para mais informações http://www.apache.org
E N D
Apache, O que é? • Apache foi um desenvolvimento do servidor http da NCSA (National Center for Super Computer Applications) de 1994 • O nome é uma corruptela de A Patchy, por que o programa no início sofreu muitas correções (patches) • Endereço para mais informações http://www.apache.org • A fundação The Apache Software Foundation existe para dar suporte legal e financeiro para os projetos do grupo
Diretórios importantes • /home/httpd/html • Diretório com as páginas do site, incluindo a principal • /home/httpd/cgi-bin • Armazena os scripts, programas, etc cgi • /home/httpd/icons • Armazena figuras
Diretórios importantes • /etc/httpd/conf • Diretório onde ficam armazenados os arquivos de configuração • /etc/httpd/logs • Diretório onde ficam armazenados os logs de acesso • /etc/httpd/modules • Diretório onde ficam armazenados os módulos de funções
Arquivos e programas • /home/httpd/html/index.html • Página inicial do Apache no servidor • /home/usuario/public_html/index.html • Página inicial do usuário usuário • /sbin/httpd • Daemon do Apache • /etc/rc.d/init.d/httpd • Script de inicialização do apache • /var/run/httpd.pid • Armazena o pid do daemon do Apache
Arquivos e Programas • /etc/httpd/httpd.conf • /etc/httpd/access.conf • /etc/httpd/srm.conf • Arquivos de configuração do Apache • O arquivo httpd.conf é o primeiro a ser lido • Todos os três arquivos são tratados de maneira idêntica • Versões mais modernas do Apache usam somente o arquivo httpd.conf, o conteúdo dos outros arquivos foi transferido para este arquivo.
Configuração • Nos arquivos indicamos as opções das diretivas e os módulos que serão executados • Diretivas são opções que indicam como o servidor deve funcionar • Módulos são partes do programa que são carregadas somente quando for necessário
Diretivas em srm.conf • DocumentRoot /home/httpd/html • Especifica onde estará a página principal do apache • UserDir public_html • O nome do diretório que é adicionado no diretório home de um usuário quando, por exemplo, um pedido para www.computador.com/~usuario é recebido • DirectoryIndex index.html index.shtml index.cgi home.html home.html • Nomes válidos como páginas de abertura de um site.
Diretivas em srm.conf • ScriptAlias /cgi-bin/ /home/httpd/cgi-bin/ • Apelido do diretório onde ficam os cgis
Diretivas em httpd.conf • ServerType standalone • Se o daemon será iniciado a partir do inet.d ou script. não alterar! • Port 80 • Número da porta que o tcp irá responder • ServerAdmin root@localhost • Endereço do culpado por tudo • ServerRoot /etc/httpd • Onde ficam os arquivos de config, erro e log • ErrorLog logs/error_log • Onde ficam os logs de erro. Se não começa com / então é relativo a ServerRoot
Diretivas em httpd.conf • BindAddress * • Ouve conexões em todos os IPs do servidor • Liga um IP, nome ou todos os IPs do servidor • Listen [IP:]porta • Instrui Apache para ouvir mais de um IP ou porta • Listen 80 • Listen 8000 • Listen 146.164.35.211:80 • Listen 146.164.35.212:8000
Diretivas em httpd.conf • Timeout 300 • Número de segundos antes de receber ou enviar um timeout • KeepAlive On • Conexões persistentes, mais de um pedido de página por conexão • StartServers • Número máximo de cópias do servidor criadas no início. O número varia com a necessidade • MaxClients • Número máximo de conexões concorrentes ao site.
Servidores Virtuais • Permite ao daemon responder a mais de um endereço IP • Forma padrão: • <VirtualHost host.domain.com> • ServerAdmin root@mail • DocumentRoot /diretorio • ServerName host.domain.com • ErrorLog logs/host-error_log • TransferLog logs/host-access-log • </VirtualHost>
Exemplo • Assuma dois IPs para a mesma máquina • 10.0.0.70 – suporte.com.br • 10.0.0.80 – seguranca.com.br • Exitem dois diretórios /home/suporte e /home/seguranca <VirtualHost suporte.com.br> ServerAdmin root@suporte.com.br DocumentRoot /home/suporte ServerName suporte.com.br ErrorLog logs/suporte-error_log TransferLog logs/suporte-error_log </VirtualHost>
Exemplo Virtual Host cont <VirtualHost seguranca.com.br> ServerAdmin root@suporte.com.br DocumentRoot /home/seguranca ServerName seguranca.com.br ErrorLog logs/seguranca-error_log TransferLog logs/seguranca-error_log </VirtualHost>