O .htaccess é um arquivo que controla o servidor web Apache, permitindo que se faça muitas coisas, a seguir vou colocar alguns exemplos úteis para todos desenvolvedores.
Forçar / Remover www na URL
RewriteEngine On
RewriteCond %{HTTP_HOST} !^your-site.com$ [NC]
RewriteRule ^(.*)$ http://your-site.com/$1 [L,R=301]
RewriteEngine On
RewriteCond %{HTTP_HOST} ^your-site.com [NC]
RewriteRule ^(.*)$ http://www.your-site.com/$1 [L,R=301]
Redirecionar todos os feeds do WordPress para o Feedburner
RedirectMatch 301 /feed/(atom|rdf|rss|rss2)/?$ http://feedburner.com/yourfeed/ RedirectMatch 301 /comments/feed/(atom|rdf|rss|rss2)/?$ http://feedburner.com/yourfeed/
Páginas de erros customizadas
É só criar as páginas customizadas e colocar no servidor e mudar o arquivo .htaccess.
ErrorDocument 400 /errors/badrequest.html ErrorDocument 401 /errors/authreqd.html ErrorDocument 403 /errors/forbid.html ErrorDocument 404 /errors/notfound.html ErrorDocument 500 /errors/serverr.html
Forçar download de arquivos específicos
Ao oferecer download de alguns arquivos como mp3, eps ou xls para download em seu site, você pode forçar baixar em vez de deixar o browser decidir o que fazer.
ForceType application/octet-stream Header set Content-Disposition attachment ForceType application/octet-stream Header set Content-Disposition attachment
Log de erros PHP
Basta criar um arquivo em algum lugar php_error.log em seu servidor, e adicionar o trecho ao seu arquivo htaccess. Não se esqueça de modificar o local do arquivo de log na linha 7.
# display no errs to user php_flag display_startup_errors off php_flag display_errors off php_flag html_errors off # log to file php_flag log_errors on php_value error_log /location/to/php_error.log
Remover extensões de arquivos nas urls
Este trecho irá remover a extensão .html em qualquer arquivo html. Este código pode ser facilmente adaptado para remover extensões de outras extensões de arquivo como php.
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.html -f
RewriteRule ^(.*)$ $1.html
Impedir listagem de diretórios
Se você não quer que qualquer um possa ver os arquivos que estão em seu servidor, basta adicionar o seguinte código ao seu arquivo htaccess.
Options -Indexes
Adicionar automaticamente charset utf-8 aos arquivos
Se você não quer que qualquer um possa ver os arquivos que estão em seu servidor, basta adicionar o seguinte código ao seu arquivo htaccess.
<FilesMatch "\.(htm|html|css|js)$"> AddDefaultCharset UTF-8 </FilesMatch>






