<IfModule mod_rewrite.c>
	RewriteEngine On
	RewriteBase /
	RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
	RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule ^(.*)$ index.php?url=$1 [PT,L,QSA]
	RewriteCond %{THE_REQUEST} ^GET.*index\.php [NC]
	RewriteRule (.*?)index\.php/*(.*) /$1$2 [R=301,NE,L]
</IfModule>

# Disable directory listing
Options -Indexes
# enable all request methods
<Limit GET POST PATCH PUT DELETE>
  Allow from all
</Limit>
# enable short tags for PHP!
<IfModule mod_php5.c>
  php_value short_open_tag 1
</IfModule>

# CACHE
<IfModule mod_expires.c>
	ExpiresActive On
	# Feed
	ExpiresByType application/atom+xml      "access plus 1 hour"
	ExpiresByType application/rss+xml       "access plus 1 hour"
	# Favicon
	ExpiresByType image/x-icon              "access plus 1 week"
	# Media: images, video, audio
	ExpiresByType audio/ogg                 "access plus 1 month"
	ExpiresByType image/gif                 "access plus 1 month"
	ExpiresByType image/jpeg                "access plus 1 month"
	ExpiresByType image/png                 "access plus 1 month"
	ExpiresByType video/mp4                 "access plus 1 month"
	ExpiresByType video/ogg                 "access plus 1 month"
	ExpiresByType video/webm                "access plus 1 month"
	# Webfonts
	ExpiresByType application/vnd.ms-fontobject "access plus 1 month"
	ExpiresByType application/x-font-ttf    "access plus 1 month"
	ExpiresByType application/x-font-woff   "access plus 1 month"
	ExpiresByType font/opentype             "access plus 1 month"
	ExpiresByType image/svg+xml             "access plus 1 month"
	# CSS and JavaScript
	ExpiresByType application/javascript    "access plus 1 year"
	ExpiresByType text/css                  "access plus 1 year"
</IfModule>

<IfModule headers_module>
	<Files ~ "\.(ico|jpg|jpeg|png|gif|swf|flv|pdf|js|css)$">  
		Header set Cache-Control "max-age=604800, public"
		Header unset ETag
	</Files>
</IfModule>

<IfModule deflate_module>
	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
</IfModule>