Um guia para os iniciantes no mundo do FreeBSD
Instalando e Configurando um Web Server (Apache)
Instalando o Apache
Existem duas opções para se instalar o Apache, voce pode instalar a versão pré-compilada
disponivel no packages ou recompila-lo apartir do ports. Para este exercicio vou explicar
a instalação apartir da versão pré-compilada, maiores detalhes de como instala-lo apartir
do ports pode ser obtida em: Instalando aplicativos no FreeBSD.
Se voce não possui o CD do FreeBSD , voce pode baixar o apache (apache-1.3a1.tgz) de por exemplo:
Ftp://ftp.unicamp.br/pub/systems/FreeBSD/2.2.5-RELEASE/packages/All/apache-1.3a1.tgz , se voce
possui o CD o arquivo está disponivel em /cdrom/packages/All.
Para instalar o apache apartir do CD, ele deve estar "montado" , se ele não estiver:
#mount /cdrom
Uma vez feito isso, vamos a instalação:
#pkg_add /cdrom/packages/All/apache-1.3a1.tgz
Após a execução deste comando o Apache já estará instalado , faltando apenas a sua configuração.
Configuração básica do Apache
Ao instalar o apache usando o pkg_add , foram criados os seguintes diretorios:
/usr/local/etc/apache - Diretorio onde se encontram os arquivos de configuracao do Apache. (ServerRoot)
/usr/local/www - Diretorio onde seus arquivos .html seram mantidos. (DocumentRoot)
Para colocar seu server no ar , a configuracao minima a ser feita consiste em:
Editar o arquivo /usr/local/etc/apache/httpd.conf e fazer as seguintes modificações:
a) Procure pela entrada:
# ServerAdmin: Your address, where problems with the server should be
# e-mailed.
ServerAdmin webmaster@your.dominio.com
e coloque como email o email do responsavel pelo server , a ser contactado em caso de problemas com o servidor.
Este email sera mostrado nas mensagens de erro.
b) Procure pela entrada:
# ServerName allows you to set a host name which is sent back to clients for
# your server if it's different than the one the program would get (i.e. use
# "www" instead of the host's real name).
#
# Note: You cannot just invent host names and hope they work. The name you
# define here must be a valid DNS name for your host. If you don't understand
# this, ask your network administrator.
ServerName www.your.dominio.cm
e coloque como ServerName o nome pelo qual seu servidor Apache sera conhecido, por exemplo www.iqm.unicamp.br , o nome escolhido deve constar
no banco de dados de seu servidor DNS.
Feitas essas alterações salve o arquivo.
Caso voce queira customizar as respostas de erro edite o arquivo /usr/local/etc/apache/srm.conf e altere as entradas:
# Customizable error response (Apache style)
# these come in three flavors
#
# 1) plain text
#ErrorDocument 500 "The server made a boo boo.
# n.b. the (") marks it as text, it does not get output
#
# 2) local redirects
#ErrorDocument 404 /missing.html
# to redirect to local url /missing.html
#ErrorDocument 404 /cgi-bin/missing_handler.pl
# n.b. can redirect to a script or a document using server-side-includes.
#
# 3) external redirects
#ErrorDocument 402 http://some.other_server.com/subscription_info.html
#
Feito isso seu server esta pronto para ser colocado no ar.
Porem acho que algumas consideracoes devem ser feitas....
Dentro do DocumentRoot ( /usr/local/www ) , voce ira encontar 3 sub diretorios:
/usr/local/www/data - diretorio no qual voce ira colocar seu documentos .html
/usr/local/www/images - diretorio no qual voce ira colocar suas imagens
/usr/local/www/cgi-bin - Diretorio no qual voce ira colocar seus CGI's
O arquivo default que o apache procura ao ser solicitado o endereco como por exemplo:
http://www.iqm.unicamp.br/ é o arquivo index.html (/usr/local/www/data/index.html).
O apache permite aos seus usuarios disponibilizar paginas www , para isso basta que eles criem um diretorio
chamado public_html em seu home , por exemplo /usr/home/edson/public_html , deste modo se o apache receber o pedido:
http://www.iqm.unicamp.br/~edson , ele ira buscar o diretorio/arquivo /usr/home/edson/public_html/index.html ,
caso voce nao queria disponibilizar este servico aos seus usuarios voce deve editar o arquivo:
/usr/local/etc/apache/srm.conf e comentar a linha ( acrescente um # no inicio da linha ):
UserDir public_html
Voce pode controlar o espaco que eles podem utilizar para disponibilizar suas paginas implementando QUOTA em seu server FreeBSD.
Recomendo que voce leia os arquivos disponiveis em /usr/local/etc/apache , eles estao em ingles de facil entendimento, para ter
uma ideia das demais configuracoes possiveis.
Uma vez feitas as configuracoes necessarias , lembrando que as aqui expostas sao as minimas para que o server funcione ,
voce pode inicilaizar seu Web Server de duas maneiras ( No defualt ele roda em modo standalone , voce pode administra-lo tambem pelo inetd ):
a)Dar um: #shutdown -r +1 em seu server
b)Execute o comando: #/usr/local/etc/rc.d/apache.sh ( é o que e feito quando voce re-inicializa o seu Server )
Bom , acho que agora voce ja pode testar seu Web Server ;-) , Boa Sorte!
Se você possui alguma critica , duvida ou sugestão ,entre em contato pelo e-mail: edson.brandi@uol.com.br