|
|
```htaccess
|
|
|
############################################
|
|
|
## uncomment these lines for CGI mode
|
|
|
## make sure to specify the correct cgi php binary file name
|
|
|
## it might be /cgi-bin/php-cgi
|
|
|
|
|
|
# Action php5-cgi /cgi-bin/php5-cgi
|
|
|
# AddHandler php5-cgi .php
|
|
|
|
|
|
############################################
|
|
|
## GoDaddy specific options
|
|
|
|
|
|
# Options -MultiViews
|
|
|
|
|
|
## you might also need to add this line to php.ini
|
|
|
## cgi.fix_pathinfo = 1
|
|
|
## if it still doesn't work, rename php.ini to php5.ini
|
|
|
|
|
|
############################################
|
|
|
## this line is specific for 1and1 hosting
|
|
|
|
|
|
#AddType x-mapp-php5 .php
|
|
|
#AddHandler x-mapp-php5 .php
|
|
|
|
|
|
############################################
|
|
|
## default index file
|
|
|
|
|
|
DirectoryIndex index.html index.php
|
|
|
|
|
|
<IfModule mod_php5.c>
|
|
|
|
|
|
############################################
|
|
|
## adjust memory limit
|
|
|
|
|
|
# php_value memory_limit 64M
|
|
|
php_value memory_limit 256M
|
|
|
php_value max_execution_time 18000
|
|
|
|
|
|
############################################
|
|
|
## disable magic quotes for php request vars
|
|
|
|
|
|
php_flag magic_quotes_gpc off
|
|
|
|
|
|
############################################
|
|
|
## disable automatic session start
|
|
|
## before autoload was initialized
|
|
|
|
|
|
php_flag session.auto_start off
|
|
|
|
|
|
############################################
|
|
|
## enable resulting html compression
|
|
|
|
|
|
#php_flag zlib.output_compression on
|
|
|
|
|
|
###########################################
|
|
|
# disable user agent verification to not break multiple image upload
|
|
|
|
|
|
php_flag suhosin.session.cryptua off
|
|
|
|
|
|
###########################################
|
|
|
# turn off compatibility with PHP4 when dealing with objects
|
|
|
|
|
|
php_flag zend.ze1_compatibility_mode Off
|
|
|
|
|
|
</IfModule>
|
|
|
|
|
|
<IfModule mod_security.c>
|
|
|
###########################################
|
|
|
# disable POST processing to not break multiple image upload
|
|
|
|
|
|
SecFilterEngine Off
|
|
|
SecFilterScanPOST Off
|
|
|
### Evite que o sftp-config.json seja carregado
|
|
|
<files sftp-config.json>
|
|
|
order allow,deny
|
|
|
deny from all
|
|
|
</files>
|
|
|
|
|
|
### Proteger .htaccess
|
|
|
|
|
|
<Files ~ "^.*\.([Hh][Tt][Aa])">
|
|
|
order allow,deny
|
|
|
deny from all
|
|
|
satisfy all
|
|
|
</Files>
|
|
|
|
|
|
###Bloquear extensões sensíveis
|
|
|
|
|
|
<FilesMatch ".(zip|sql|htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">
|
|
|
Order Allow,Deny
|
|
|
Deny from all
|
|
|
</FilesMatch>
|
|
|
|
|
|
#### Bloqueio de Bots indesejados que entopem o servidor #####
|
|
|
|
|
|
RewriteCond %{HTTP_USER_AGENT} MJ12bot
|
|
|
RewriteRule .* - [F]
|
|
|
RewriteCond %{HTTP_USER_AGENT} 80legs [NC]
|
|
|
RewriteRule ^ - [F]
|
|
|
|
|
|
##### Adicionar suporte para gráficos SVG e CSS3 Pie #####
|
|
|
|
|
|
AddType image/svg+xml svg svgz
|
|
|
AddEncoding gzip svgz
|
|
|
AddType text/x-component .htc
|
|
|
DirectoryIndex index.html index.php
|
|
|
|
|
|
##### Configuração padrão do php do projeto #####
|
|
|
|
|
|
<IfModule mod_php5.c>
|
|
|
php_value memory_limit 512M
|
|
|
php_value max_execution_time 18000
|
|
|
php_flag magic_quotes_gpc off
|
|
|
php_flag session.auto_start off
|
|
|
php_flag suhosin.session.cryptua off
|
|
|
php_flag zend.ze1_compatibility_mode Off
|
|
|
</IfModule>
|
|
|
|
|
|
<IfModule mod_deflate.c>
|
|
|
|
|
|
############################################
|
|
|
## enable apache served files compression
|
|
|
## http://developer.yahoo.com/performance/rules.html#gzip
|
|
|
|
|
|
# Insert filter on all content
|
|
|
###SetOutputFilter DEFLATE
|
|
|
# Insert filter on selected content types only
|
|
|
#AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript
|
|
|
|
|
|
# Netscape 4.x has some problems...
|
|
|
#BrowserMatch ^Mozilla/4 gzip-only-text/html
|
|
|
|
|
|
# Netscape 4.06-4.08 have some more problems
|
|
|
#BrowserMatch ^Mozilla/4\.0[678] no-gzip
|
|
|
|
|
|
# MSIE masquerades as Netscape, but it is fine
|
|
|
#BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
|
|
|
|
|
|
# Don't compress images
|
|
|
#SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
|
|
|
|
|
|
# Make sure proxies don't deliver the wrong content
|
|
|
#Header append Vary User-Agent env=!dont-vary
|
|
|
|
|
|
</IfModule>
|
|
|
|
|
|
<IfModule mod_ssl.c>
|
|
|
|
|
|
############################################
|
|
|
## make HTTPS env vars available for CGI mode
|
|
|
|
|
|
SSLOptions StdEnvVars
|
|
|
|
|
|
</IfModule>
|
|
|
|
|
|
<IfModule mod_rewrite.c>
|
|
|
|
|
|
RewriteRule ^(index.php/?)?rss/ - [L,R=403]
|
|
|
|
|
|
RewriteRule ^downloader/ - [L,R=403]
|
|
|
|
|
|
############################################
|
|
|
## force use www
|
|
|
|
|
|
RewriteCond %{HTTP_HOST} !=""
|
|
|
RewriteCond %{HTTP_HOST} !^www\. [NC]
|
|
|
RewriteCond %{HTTPS}s ^on(s)|
|
|
|
RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
|
|
|
##Bloqueia /rss
|
|
|
RewriteRule ^(index.php/?)?rss/ - [L,R=403]
|
|
|
|
|
|
############################################
|
|
|
## enable rewrites
|
|
|
##Bloqueia /downloader
|
|
|
RewriteRule ^downloader/ - [L,R=403]
|
|
|
|
|
|
Options +FollowSymLinks
|
|
|
RewriteEngine on
|
|
|
##Forçar o uso do www
|
|
|
#RewriteCond %{HTTP_HOST} !=""
|
|
|
#RewriteCond %{HTTP_HOST} !^www\. [NC]
|
|
|
#RewriteCond %{HTTPS}s ^on(s)|
|
|
|
#RewriteRule ^ http%1://www.%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
|
|
|
|
|
|
############################################
|
|
|
## you can put here your magento root folder
|
|
|
## path relative to web root
|
|
|
|
|
|
#RewriteBase /magento/
|
|
|
|
|
|
############################################
|
|
|
## uncomment next line to enable light API calls processing
|
|
|
|
|
|
# RewriteRule ^api/([a-z][0-9a-z_]+)/?$ api.php?type=$1 [QSA,L]
|
|
|
|
|
|
############################################
|
|
|
## rewrite API2 calls to api.php (by now it is REST only)
|
|
|
##Reescreva as chamadas da API2 para api.php (agora é apenas REST)
|
|
|
|
|
|
RewriteRule ^api/rest api.php?type=rest [QSA,L]
|
|
|
|
|
|
############################################
|
|
|
## workaround for HTTP authorization
|
|
|
## in CGI environment
|
|
|
|
|
|
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
|
|
|
Options +FollowSymLinks
|
|
|
RewriteEngine on
|
|
|
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
|
|
|
RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
|
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
|
RewriteCond %{REQUEST_FILENAME} !-d
|
|
|
RewriteCond %{REQUEST_FILENAME} !-l
|
|
|
RewriteRule .* index.php [L]
|
|
|
|
|
|
############################################
|
|
|
## TRACE and TRACK HTTP methods disabled to prevent XSS attacks
|
|
|
|
|
|
RewriteCond %{REQUEST_METHOD} ^TRAC[EK]
|
|
|
RewriteRule .* - [L,R=405]
|
|
|
|
|
|
<IfModule mod_setenvif.c>
|
|
|
<IfModule mod_headers.c>
|
|
|
|
|
|
############################################
|
|
|
# X-Content-Type-Options: nosniff disable content-type sniffing on some browsers.
|
|
|
Header set X-Content-Type-Options: nosniff
|
|
|
|
|
|
############################################
|
|
|
# This header forces to enables the Cross-site scripting (XSS) filter in browsers (if disabled)
|
|
|
BrowserMatch \bMSIE\s8 ie8
|
|
|
Header set X-XSS-Protection: "1; mode=block" env=!ie8
|
|
|
|
|
|
</IfModule>
|
|
|
</IfModule>
|
|
|
|
|
|
############################################
|
|
|
## redirect for mobile user agents
|
|
|
|
|
|
#RewriteCond %{REQUEST_URI} !^/mobiledirectoryhere/.*$
|
|
|
#RewriteCond %{HTTP_USER_AGENT} "android|blackberry|ipad|iphone|ipod|iemobile|opera mobile|palmos|webos|googlebot-mobile" [NC]
|
|
|
#RewriteRule ^(.*)$ /mobiledirectoryhere/ [L,R=302]
|
|
|
|
|
|
############################################
|
|
|
## always send 404 on missing files in these folders
|
|
|
|
|
|
RewriteCond %{REQUEST_URI} !^/(media|skin|js)/
|
|
|
|
|
|
############################################
|
|
|
## never rewrite for existing files, directories and links
|
|
|
|
|
|
RewriteCond %{REQUEST_FILENAME} !-f
|
|
|
RewriteCond %{REQUEST_FILENAME} !-d
|
|
|
RewriteCond %{REQUEST_FILENAME} !-l
|
|
|
|
|
|
############################################
|
|
|
## rewrite everything else to index.php
|
|
|
|
|
|
RewriteRule .* index.php [L]
|
|
|
##### Ativar compactação de arquivos exibidos por apache #####
|
|
|
|
|
|
<IfModule mod_deflate.c>
|
|
|
AddOutputFilterByType DEFLATE text/plain
|
|
|
AddOutputFilterByType DEFLATE text/html
|
|
|
AddOutputFilterByType DEFLATE text/xml
|
|
|
AddOutputFilterByType DEFLATE text/css
|
|
|
AddOutputFilterByType DEFLATE application/xml
|
|
|
AddOutputFilterByType DEFLATE application/xhtml+xml
|
|
|
AddOutputFilterByType DEFLATE application/rss+xml
|
|
|
AddOutputFilterByType DEFLATE application/javascript
|
|
|
AddOutputFilterByType DEFLATE application/x-javascript
|
|
|
AddOutputFilterByType DEFLATE application/x-httpd-php
|
|
|
AddOutputFilterByType DEFLATE application/cgi-php5
|
|
|
AddOutputFilterByType DEFLATE application/cgi-php53
|
|
|
AddOutputFilterByType DEFLATE application/cgi-php54
|
|
|
BrowserMatch ^Mozilla/4 gzip-only-text/html
|
|
|
BrowserMatch ^Mozilla/4\.0[678] no-gzip
|
|
|
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
|
|
|
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary
|
|
|
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary
|
|
|
SetEnvIfNoCase Request_URI \.(?:pdf|doc)$ no-gzip dont-vary
|
|
|
SetEnvIfNoCase Request_URI \.(?:avi|mov|mp3|mp4|rm)$ no-gzip dont-vary
|
|
|
</IfModule>
|
|
|
|
|
|
<Files *.php>
|
|
|
SetOutputFilter DEFLATE
|
|
|
</Files>
|
|
|
|
|
|
############################################
|
|
|
## Prevent character encoding issues from server overrides
|
|
|
## If you still have problems, use the second line instead
|
|
|
|
|
|
AddDefaultCharset Off
|
|
|
#AddDefaultCharset UTF-8
|
|
|
|
|
|
<IfModule mod_expires.c>
|
|
|
|
|
|
############################################
|
|
|
## Add default Expires header
|
|
|
## http://developer.yahoo.com/performance/rules.html#expires
|
|
|
|
|
|
ExpiresDefault "access plus 1 year"
|
|
|
|
|
|
<IfModule mod_ssl.c>
|
|
|
SSLOptions StdEnvVars
|
|
|
</IfModule>
|
|
|
|
|
|
############################################
|
|
|
## By default allow all access
|
|
|
##### Cabeçalho #####
|
|
|
|
|
|
<ifModule mod_headers.c>
|
|
|
Header unset ETag
|
|
|
Header unset Last-Modified
|
|
|
</ifModule>
|
|
|
|
|
|
##### disable POST processing to not break multiple image upload #####
|
|
|
|
|
|
<IfModule mod_security.c>
|
|
|
#SecRuleEngine Off
|
|
|
SecFilterScanPOST Off
|
|
|
</IfModule>
|
|
|
|
|
|
|
|
|
|
|
|
##### Modifique o gzip e o armazenamento em cache para melhorar a velocidade do site #####
|
|
|
|
|
|
<ifModule mod_gzip.c>
|
|
|
mod_gzip_on Yes
|
|
|
mod_gzip_dechunk Yes
|
|
|
mod_gzip_item_include \.(html?|txt|css|js|php|pl)$
|
|
|
mod_gzip_item_include handler ^cgi-script$
|
|
|
mod_gzip_item_include mime ^text/.*
|
|
|
mod_gzip_item_include mime ^application/x-javascript.*
|
|
|
mod_gzip_item_exclude mime ^image/.*
|
|
|
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
|
|
|
</ifModule>
|
|
|
|
|
|
##### O padrão expira cabeçalhos para todos os tipos de arquivo #####
|
|
|
##### Não recomendado para ambiente de desenvolvimento #####
|
|
|
|
|
|
<ifModule mod_expires.c>
|
|
|
ExpiresActive On
|
|
|
ExpiresDefault "access plus 1 seconds"
|
|
|
ExpiresByType text/html "access plus 1 seconds"
|
|
|
ExpiresByType image/gif "access plus 2592000 seconds"
|
|
|
ExpiresByType image/jpeg "access plus 2592000 seconds"
|
|
|
ExpiresByType image/png "access plus 2592000 seconds"
|
|
|
ExpiresByType text/css "access plus 604800 seconds"
|
|
|
ExpiresByType text/javascript "access plus 216000 seconds"
|
|
|
ExpiresByType application/x-javascript "access plus 216000 seconds"
|
|
|
</ifModule>
|
|
|
|
|
|
##### Mime Type Cache #####
|
|
|
|
|
|
<IfModule mod_mime.c>
|
|
|
|
|
|
##### AUDIO #####
|
|
|
AddType audio/mp4 m4a f4a f4b
|
|
|
AddType audio/ogg oga ogg
|
|
|
|
|
|
##### JAVASCRIPT #####
|
|
|
# Normalize to standard type (it's sniffed in IE anyways):
|
|
|
# http://tools.ietf.org/html/rfc4329#section-7.2
|
|
|
AddType application/javascript js jsonp
|
|
|
AddType application/json json
|
|
|
|
|
|
##### VIDEO #####
|
|
|
AddType video/mp4 mp4 m4v f4v f4p
|
|
|
AddType video/ogg ogv
|
|
|
AddType video/webm webm
|
|
|
AddType video/x-flv flv
|
|
|
|
|
|
##### WEB FONTS #####
|
|
|
AddType application/font-woff woff
|
|
|
AddType application/vnd.ms-fontobject eot
|
|
|
|
|
|
##### Browsers usually ignore the font MIME types #####
|
|
|
##### and sniff the content, however, Chrome shows #####
|
|
|
##### a warning if other MIME types are used for #####
|
|
|
##### the following fonts. #####
|
|
|
AddType application/x-font-ttf ttc ttf
|
|
|
AddType font/opentype otf
|
|
|
|
|
|
|
|
|
##### OTHER #####
|
|
|
AddType application/octet-stream safariextz
|
|
|
AddType application/x-chrome-extension crx
|
|
|
AddType application/x-opera-extension oex
|
|
|
AddType application/x-shockwave-flash swf
|
|
|
AddType application/x-web-app-manifest+json webapp
|
|
|
AddType application/x-xpinstall xpi
|
|
|
AddType application/xml atom rdf rss xml
|
|
|
AddType image/webp webp
|
|
|
AddType image/x-icon ico
|
|
|
AddType text/cache-manifest appcache manifest
|
|
|
AddType text/vtt vtt
|
|
|
AddType text/x-component htc
|
|
|
AddType text/x-vcard vcf
|
|
|
|
|
|
Order allow,deny
|
|
|
Allow from all
|
|
|
|
|
|
###########################################
|
|
|
## Deny access to release notes to prevent disclosure of the installed Magento version
|
|
|
|
|
|
<FilesMatch ".(zip|sql|htaccess|htpasswd|ini|phps|fla|psd|log|sh)$">
|
|
|
Order Allow,Deny
|
|
|
Deny from all
|
|
|
</FilesMatch>
|
|
|
|
|
|
<Files RELEASE_NOTES.txt>
|
|
|
order allow,deny
|
|
|
deny from all
|
|
|
</Files>
|
|
|
|
|
|
<Files package.xml>
|
|
|
order allow,deny
|
|
|
deny from all
|
|
|
</Files>
|
|
|
|
|
|
<Files package.xml>
|
|
|
order allow,deny
|
|
|
deny from all
|
|
|
</Files>
|
|
|
|
|
|
<Files gruntfile.js>
|
|
|
order allow,deny
|
|
|
deny from all
|
|
|
</Files>
|
|
|
|
|
|
############################################
|
|
|
## If running in cluster environment, uncomment this
|
|
|
## http://developer.yahoo.com/performance/rules.html#etags
|
|
|
</IfModule>
|
|
|
|
|
|
#FileETag none
|
|
|
<IfModule mod_mime.c>
|
|
|
AddCharset utf-8 .atom .css .js .json .rss .vtt .webapp .xml
|
|
|
</IfModule>
|
|
|
|
|
|
###########################################
|
|
|
## Deny access to cron.php
|
|
|
<Files cron.php>
|
|
|
##### Desabilitado ETags http://developer.yahoo.com/performance/rules.html#etags #####
|
|
|
|
|
|
############################################
|
|
|
## uncomment next lines to enable cron access with base HTTP authorization
|
|
|
## http://httpd.apache.org/docs/2.2/howto/auth.html
|
|
|
##
|
|
|
## Warning: .htpasswd file should be placed somewhere not accessible from the web.
|
|
|
## This is so that folks cannot download the password file.
|
|
|
## For example, if your documents are served out of /usr/local/apache/htdocs
|
|
|
## you might want to put the password file(s) in /usr/local/apache/.
|
|
|
FileETag None
|
|
|
|
|
|
#AuthName "Cron auth"
|
|
|
#AuthUserFile ../.htpasswd
|
|
|
#AuthType basic
|
|
|
#Require valid-user
|
|
|
##### Evitar problemas de codificação de caracteres das substituições do servidor #####
|
|
|
|
|
|
############################################
|
|
|
AddDefaultCharset UTF-8
|
|
|
|
|
|
Order allow,deny
|
|
|
Deny from all
|
|
|
##### Por padrão, permitir todo o acesso #####
|
|
|
|
|
|
</Files>
|
|
|
Order allow,deny
|
|
|
Allow from all
|
|
|
|
|
|
````` |