You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by nd...@apache.org on 2005/03/11 19:04:04 UTC
svn commit: r157127 - httpd/httpd/trunk/docs/manual/howto/htaccess.xml.pt-br
Author: nd
Date: Fri Mar 11 10:04:02 2005
New Revision: 157127
URL: http://svn.apache.org/viewcvs?view=rev&rev=157127
Log:
update Brazilian Portuguese translation
* manual/howto/htaccess.xml.pt-br: new file
Translated by: Eduardo Tompson Pereira <eduardo.tompson itelefonica.com.br>
Reviewed by: Luiz Rocha <lsdr lsdr.net>
Added:
httpd/httpd/trunk/docs/manual/howto/htaccess.xml.pt-br (with props)
Added: httpd/httpd/trunk/docs/manual/howto/htaccess.xml.pt-br
URL: http://svn.apache.org/viewcvs/httpd/httpd/trunk/docs/manual/howto/htaccess.xml.pt-br?view=auto&rev=157127
==============================================================================
--- httpd/httpd/trunk/docs/manual/howto/htaccess.xml.pt-br (added)
+++ httpd/httpd/trunk/docs/manual/howto/htaccess.xml.pt-br Fri Mar 11 10:04:02 2005
@@ -0,0 +1,397 @@
+<?xml version='1.0' encoding='UTF-8' ?>
+<!DOCTYPE manualpage SYSTEM "../style/manualpage.dtd">
+<?xml-stylesheet type="text/xsl" href="../style/manual.pt-br.xsl"?>
+<!-- English Revision: 151408 $ -->
+
+<!--
+ Copyright 2005 The Apache Software Foundation or its licensors,
+ as applicable.
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+
+<manualpage metafile="htaccess.xml.meta">
+<parentdocument href="./">How-To / Tutoriais</parentdocument>
+
+<title>Tutorial do Apache: arquivos .htaccess</title>
+
+<summary>
+<p>Arquivos <code>.htaccess</code> oferecem um meio de fazer mudanças
+ nas configurações por-diretório.</p>
+</summary>
+
+<section id="related"><title>Arquivos .htaccess </title>
+ <related>
+ <modulelist>
+ <module>core</module>
+ <module>mod_authn_file</module>
+ <module>mod_authz_groupfile</module>
+ <module>mod_cgi</module>
+ <module>mod_include</module>
+ <module>mod_mime</module>
+ </modulelist>
+
+ <directivelist>
+ <directive module="core">AccessFileName</directive>
+ <directive module="core">AllowOverride</directive>
+ <directive module="core">Options</directive>
+ <directive module="mod_mime">AddHandler</directive>
+ <directive module="core">SetHandler</directive>
+ <directive module="core">AuthType</directive>
+ <directive module="core">AuthName</directive>
+ <directive module="mod_authn_file">AuthUserFile</directive>
+ <directive module="mod_authz_groupfile">AuthGroupFile</directive>
+ <directive module="core">Require</directive>
+ </directivelist>
+
+ </related>
+</section>
+
+<section id="what">
+<title>O que eles são/Como usá-los</title>
+
+ <p>Os arquivos <code>.htaccess</code> (ou "arquivos de
+ configuração distribuída") oferecem um meio de fazer mudanças nas
+ configurações por-diretório. Um arquivo, contendo uma ou mais
+ diretrizes de configurações, é colocado em um diretório
+ em particular, e as diretrizes se aplicam para aquele diretório e todos
+ os seu subdiretórios subseqüentes.</p>
+
+ <note><title>Nota:</title>
+ <p>Se você quiser renomear o seu arquivo <code>.htaccess</code>
+ para outro nome, você deve usar a diretriz <directive
+ module="core">AccessFileName</directive>. Por exemplo, se você
+ prefere que o arquivo se chame <code>.config</code>, então você
+ pode adicionar a seguinte linha ao seu arquivo de configuração
+ do servidor:</p>
+
+ <example>
+ AccessFileName .config
+ </example>
+ </note>
+
+ <p>No geral, arquivos <code>.htaccess</code> usam a mesma sintaxe
+ que os <a href="../configuring.html#syntax">arquivos de
+ configuração principal</a>. O que você pode colocar nesses
+ arquivos é determinado pele diretriz <directive
+ module="core">AllowOverride</directive>. Essa diretriz especifica,
+ em categorias, quais diretrizes serão aceitas caso sejam
+ encontradas em um arquivo <code>.htaccess</code>. Se uma diretriz
+ for permitida em um arquivo <code>.htaccess</code>, a documentação
+ para essa diretriz irá conter uma seção <em>Override</em>,
+ especificando que valor precisa estar em <directive
+ module="core">AllowOverride</directive> para que esta diretriz
+ seja permitida.</p>
+
+ <p>Por exemplo, se você procurar na documentação pela diretriz
+ <directive module="core">AddDefaultCharset</directive>, você
+ achará que ela é permitida nos arquivos <code>.htaccess</code>.
+ (Veja a linha Contexto no sumário das diretivas.) A
+ linha <a href="../mod/directive-dict.html#Context">Override</a> lê
+ <code>FileInfo</code>. Então, você deve ao menos ter
+ <code>AllowOverride FileInfo</code> para que essa diretriz seja
+ aceita nos arquivos <code>.htaccess</code>.</p>
+
+ <example><title>Exemplo:</title>
+ <table>
+ <tr>
+ <td><a
+ href="../mod/directive-dict.html#Context">Contexto:</a></td>
+ <td>configuração do servidor, hospedeiros virtuais, diretório, .htaccess</td>
+ </tr>
+
+ <tr>
+ <td><a
+ href="../mod/directive-dict.html#Override">Override:</a></td>
+ <td>FileInfo</td>
+ </tr>
+ </table>
+ </example>
+
+ <p>Se você estiver incerto se uma diretriz em particular é
+ aceita em um arquivo <code>.htaccess</code>, procure na
+ documentação por essa diretriz, e verifique a linha de
+ Contexto por ".htaccess".</p> </section>
+
+ <section id="when"><title>Quando (não) usar arquivos .htaccess</title>
+
+ <p>No geral, você nunca deve usar arquivos <code>.htaccess</code>
+ a não ser que você não tenha acesso ao arquivo de configuração
+ principal do servidor. Existe, por exemplo, um erro de concepção
+ que dita que a autenticação de usuários sempre deve
+ ser feita usando os arquivos <code>.htaccess</code>. Esse
+ simplesmente não é o caso. Você pode usar as configurações de
+ autenticação de usuário no arquivo de configuração principal do
+ servidor, e isso é, de fato, a maneira mais adequada de se fazer
+ as coisas.</p>
+
+ <p>Arquivos <code>.htaccess</code> devem ser usados em casos onde
+ os provedores de conteúdo do site precisem fazer mudanças na
+ configuração do servidor por-diretório, mas não tem
+ acesso <em>root</em> ao sistema do servidor. Caso o administrador do
+ servidor não esteja disposto a fazer mudanças freqüentes nas
+ configurações do servidor, é desejável permitir que os
+ usuários possam fazer essas mudanças através de arquivos
+ <code>.htaccess</code> eles mesmos. Isso é particularmente
+ verdade, por exemplo, em casos onde provedores estão fornecendo
+ múltiplos sites para usuários em apenas uma máquina, e querem que
+ seus usuários possam alterar suas configurações.</p>
+
+ <p>No entanto, de modo geral, o uso de arquivos <code>.htaccess</code>
+ deve ser evitado quando possível. Quaisquer configurações
+ que você considerar acrescentar em um arquivo <code>.htaccess</code>, podem
+ ser efetivamente colocadas em uma seção <directive module="core"
+ type="section">Directory</directive> no arquivo principal de
+ configuração de seu servidor.</p>
+
+ <p>Existem duas razões principais para evitar o uso de arquivos
+ <code>.htaccess</code>.</p>
+
+ <p>A primeira delas é a performance. Quando <directive
+ module="core">AllowOverride</directive> é configurado para
+ permitir o uso de arquivos <code>.htaccess</code>, o Apache procura
+ em todos diretórios por arquivos <code>.htaccess</code>.
+ Logo, permitir arquivos <code>.htaccess</code> causa um impacto na
+ performance, mesmo sem você usá-los de fato! Além disso,
+ o arquivo <code>.htaccess</code> é carregado toda vez que um documento
+ é requerido.</p>
+
+ <p>Além disso, note que o Apache precisa procurar pelos arquivos
+ <code>.htaccess</code> em todos os diretórios superiores, para ter
+ o complemento total de todas as diretivas que devem ser
+ aplicadas. (Veja a seção <a href="#how">como as diretrizes são
+ aplicadas</a>.) Então, se um arquivo de um diretório
+ <code>/www/htdocs/example</code> é requerido, o Apache precisa
+ procurar pelos seguintes arquivos:</p>
+
+ <example>
+ /.htaccess<br />
+ /www/.htaccess<br />
+ /www/htdocs/.htaccess<br />
+ /www/htdocs/example/.htaccess
+ </example>
+
+ <p>Assim, para cada acesso de arquivo fora desse diretório,
+ existem 4 acessos ao sistema de arquivos adicionais, mesmo
+ que nenhum desses arquivos estejam presentes. (Note que esse
+ só será o caso se os arquivos <code>.htaccess</code>
+ estiverem habilitados para <code>/</code>, o que
+ normalmente não é o verdade.)</p>
+
+ <p>A segunda consideração é relativa à segurança.
+ Você está permitindo que os usuários modifiquem as
+ configurações do servidor, o que pode resultar em mudanças
+ que podem fugir ao seu controle. Considere com cuidado se você quer
+ ou não dar aos seus usuários esses privilégios. Note também
+ que dar aos usuários menos privilégios que eles precisam, acarreta em
+ pedidos de suporte técnico adicionais. Tenha certeza que você comunicou
+ aos usuários que nível de privilégios você os deu.
+ Especificar exatamente o que você configurou na diretriz <directive
+ module="core">AllowOverride</directive>, e direcioná-los para a
+ documentação relevante, irá poupá-lo de muita confusão
+ depois.</p>
+
+ <p>Perceba que é exatamente equivalente colocar o arquivo
+ <code>.htaccess</code> em um diretório
+ <code>/www/htdocs/example</code> contendo uma diretriz, e
+ adicionar a mesma diretriz em uma seção <em>Directory</em>
+ <code><Directory /www/htdocs/example></code> na configuração
+ principal do seu servidor:</p>
+
+ <p>Arquivo <code>.htaccess</code> em <code>/www/htdocs/example</code>:</p>
+
+ <example><title>Conteúdo de um arquivo .htaccess em
+ <code>/www/htdocs/example</code></title>
+ AddType text/example .exm
+ </example>
+
+ <example><title>Seção do seu arquivo <code>httpd.conf</code></title>
+ <Directory /www/htdocs/example><br />
+ <indent>
+ AddType text/example .exm<br />
+ </indent>
+ </Directory>
+ </example>
+
+ <p>No entanto, adicionando isso ao seu arquivo de configuração do
+ servidor resultará em uma menor perda de performance, na medida que
+ a configuração é carregada no momento da inicialização do
+ servidor, ao invés de toda que que um arquivo é requerido.</p>
+
+ <p>O uso de arquivos <code>.htaccess</code> pode ser totalmente
+ desabilitado, ajustando a diretriz <directive
+ module="core">AllowOverride</directive> para <code>none</code>:</p>
+
+ <example>
+ AllowOverride None
+ </example>
+</section>
+
+<section id="how"><title>Como as diretrizes são aplicadas</title>
+
+ <p>As diretrizes de configuração que se encontram em um arquivo
+ <code>.htaccess</code> são aplicadas para o diretório no qual o
+ arquivo <code>.htaccess</code> se encontra, e para todos os
+ subdiretórios ali presentes. Mas, é importante lembrar também que
+ podem existir arquivos <code>.htaccess</code> no diretórios
+ superiores. As diretrizes são aplicadas na ordem que são
+ achadas. Logo, um arquivo <code>.htaccess</code> em um diretório
+ em particular, pode sobrescrever as diretrizes encontradas em um
+ diretório acima deste em sua respectiva árvore. Estes, por sua vez,
+ podem ter suas diretrizes sobrescritas por diretrizes ainda mais
+ acima, ou no próprio arquivo de configuração principal do
+ servidor.</p>
+
+ <p>Exemplo:</p>
+
+ <p>No diretório <code>/www/htdocs/example1</code> nós temos
+ um arquivo <code>.htaccess</code> contendo o seguinte:</p>
+
+ <example>
+ Options +ExecCGI
+ </example>
+
+ <p>(Nota: você deve ter "<code>AllowOverride Options</code>" para
+ permitir o uso da diretriz "<directive
+ module="core">Options</directive>" nos arquivos
+ <code>.htaccess</code> .)</p>
+
+ <p>No diretório <code>/www/htdocs/example1/example2</code> nós temos
+ um arquivo <code>.htaccess</code> contendo:</p>
+
+ <example>
+ Options Includes
+ </example>
+
+ <p>Devido a esse segundo arquivo <code>.htaccess</code>, no
+ diretório <code>/www/htdocs/example1/example2</code>, a execução
+ de scripts CGI não é permitida, pois somente <code>Options
+ Includes</code> está em efeito, o que sobrescreve completamente
+ quaisquer outros ajustes previamente configurados.</p>
+</section>
+
+<section id="auth"><title>Exemplo de Autenticação</title>
+
+ <p>Se você veio diretamente à esta parte do documento para
+ aprender como fazer autenticação, é importante notar uma
+ coisa. Existe uma concepção errada, mas muito comum, de que é
+ necessário o uso de arquivos <code>.htaccess</code> para implementar
+ a autenticação por senha. Este não é o caso. Colocar
+ diretrizes de senha em uma seção <directive module="core"
+ type="section">Directory</directive>, no seu arquivo principal de
+ configuração do servidor, é a melhor maneira de se implementar
+ isto, e os arquivos <code>.htaccess</code> devem ser usados apenas
+ se você não tem acesso ao arquivo principal de configuração do
+ servidor. Veja <a href="#when">acima</a> a discussão sobre quando
+ você deve e quando não deve usar os arquivos
+ <code>.htaccess</code>.</p>
+
+ <p>Dito isso, se você ainda acredita que precisa usar um arquivo
+ <code>.htaccess</code>, a configuração a seguir provavelmente
+ funcionará para você.</p>
+
+ <p>Conteúdo de um arquivo <code>.htaccess</code>:</p>
+
+ <example>
+ AuthType Basic<br />
+ AuthName "Password Required"<br />
+ AuthUserFile /www/passwords/password.file<br />
+ AuthGroupFile /www/passwords/group.file<br />
+ Require Group admins
+ </example>
+
+ <p>Note que <code>AllowOverride AuthConfig</code> precisa estar
+ habilitado para que estas diretrizes tenham efeito.</p>
+
+ <p>Por favor veja o <a href="auth.html">tutorial de
+ autenticação</a> para uma discussão mais completa sobre
+ autenticação e autorização.</p>
+</section>
+
+<section id="ssi"><title>Exemplo de Server Side Includes</title>
+
+ <p>Outro uso comum de arquivos <code>.htaccess</code> é ativar o
+ Server Side Includes para um diretório em particular. Isto pode
+ ser feito com as seguintes diretrizes de configuração, colocadas em
+ um arquivo <code>.htaccess</code> no diretório desejado:</p>
+
+ <example>
+ Options +Includes<br />
+ AddType text/html shtml<br />
+ AddHandler server-parsed shtml
+ </example>
+
+ <p>Note que ambos <code>AllowOverride Options</code> e
+ <code>AllowOverride FileInfo</code> precisam estar habilitados
+ para essas diretrizes terem efeito.</p>
+
+ <p>Por favor veja o <a href="ssi.html">tutorial de SSI</a> para
+ uma discussão mais completa sobre server-side includes.</p>
+</section>
+
+<section id="cgi"><title>Exemplo de CGI</title>
+
+ <p>Finalmente, você pode querer que um arquivo
+ <code>.htaccess</code> permita a execução de programas CGI em um
+ diretório em particular. Isto pode ser implementado com as
+ seguintes configurações:</p>
+
+ <example>
+ Options +ExecCGI<br />
+ AddHandler cgi-script cgi pl
+ </example>
+
+ <p>Alternativamente, se você desejar que todos os arquivos de um
+ dado diretório, sejam considerados programas CGI, isso pode ser
+ feito com a seguinte configuração:</p>
+
+ <example>
+ Options +ExecCGI<br />
+ SetHandler cgi-script
+ </example>
+
+ <p>Note que ambos <code>AllowOverride Options</code> e
+ <code>AllowOverride FileInfo</code> precisam estar habilitados
+ para que essas diretrizes tenham quaisquer efeito.</p>
+
+ <p>Por favor veja o <a href="cgi.html">tutorial de CGI
+ tutorial</a> para uma discussão mais completa sobre programação
+ e configuração CGI.</p>
+</section>
+
+<section id="troubleshoot"><title>Resolvendo Problemas</title>
+
+ <p>Quando você adiciona diretrizes de configuração em um arquivo
+ <code>.htaccess</code>, e não obtém o efeito desejado, existe uma
+ série de pontos que podem estar errados.</p>
+
+ <p>Mais comumente, o problema é que a diretriz <directive
+ module="core">AllowOverride</directive> não está habilitada
+ corretamente para que as suas diretrizes de configurações sejam
+ honradas. Verifique se você não possui <code>AllowOverride
+ None</code> ajustado para o escopo do arquivo em questão. Um bom
+ meio de testar isso é colocar "lixo" em seu arquivo
+ <code>.htaccess</code> e recarregá-lo. Se não for gerado nenhum
+ erro do servidor, certamente você tem <code>AllowOverride
+ None</code> habilitado.</p>
+
+ <p>Se, por outro lado, você está obtendo erros do servidor ao
+ tentar acessar documentos, verifique o registro de erros do
+ Apache. Ele provavelmente irá indicar que a diretriz usada em
+ seu arquivo <code>.htaccess</code> não é permitida.
+ Alternativamente, ele pode acusar erros de sintaxe que você terá
+ que corrigir.</p>
+
+</section>
+
+</manualpage>
Propchange: httpd/httpd/trunk/docs/manual/howto/htaccess.xml.pt-br
------------------------------------------------------------------------------
svn:eol-style = native