RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{HTTP_USER_AGENT} !(facebookexternalhit|WhatsApp|Mediatoolkitbot)
RewriteCond %{REQUEST_METHOD} !POST
RewriteCond %{HTTP:Cookie} !(wordpress_logged_in|wp_woocommerce_session|safirmobilswitcher=mobil)
RewriteCond %{HTTP:Profile} !^[a-z0-9\"]+ [NC]
RewriteCond ' . $abs_url . '/router.php -f
RewriteRule .? /' . $relative_url . '/router.php [L]
';
if ($speedExpire) {
$code .= '
Header set Cache-Control "max-age=43200"
Header set Cache-Control "max-age=604800"
Header set Cache-Control "max-age=2592000"
Header unset Cache-Control
ExpiresActive On
ExpiresDefault "access plus 5 seconds"
ExpiresByType image/x-icon "access plus 30 days"
ExpiresByType image/jpeg "access plus 30 days"
ExpiresByType image/png "access plus 30 days"
ExpiresByType image/gif "access plus 30 days"
ExpiresByType image/webp "access plus 30 days"
ExpiresByType application/x-shockwave-flash "access plus 30 days"
ExpiresByType text/css "access plus 30 days"
ExpiresByType text/javascript "access plus 30 days"
ExpiresByType application/javascript "access plus 30 days"
ExpiresByType application/x-javascript "access plus 30 days"
ExpiresByType text/html "access plus 12 hours"
ExpiresByType application/xhtml+xml "access plus 5 minutes"
ExpiresByType application/xml "access plus 5 minutes"
';
}
if ($speedDeflate) {
$code .= '
AddType x-font/woff .woff
AddOutputFilterByType DEFLATE image/svg+xml
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/javascript
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-font-ttf
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject
AddOutputFilterByType DEFLATE font/opentype font/ttf font/eot font/otf
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
';
}
}
if (!empty($code)) {
$code = self::start_marker
. $code . PHP_EOL
. self::fin_marker . PHP_EOL;
}
// if code is not in .htaccess
if (strpos($ht, self::start_marker) === false) {
if (!empty($code))
//insert the code
file_put_contents(self::getHtaccessPath(), $code . $ht);
} else {
if (empty($code)) {
//remove code
$ht = self::ht_clean($ht);
file_put_contents(self::getHtaccessPath(), $ht);
} else {
if (strpos($ht, $code) === false) {
//codes differ - update
$ht = self::ht_clean($ht);
file_put_contents(self::getHtaccessPath(), $code . $ht);
}
}
}
}
}