Created
December 2, 2019 10:36
-
-
Save yogiprsetya/09676e0faa559d7a8d9b1e8a8e05819d to your computer and use it in GitHub Desktop.
base apache config via .HTACCESS file
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
## GZip ## | |
<IfModule mod_deflate.c> | |
# Compress HTML, CSS, JavaScript, Text, XML and fonts | |
AddOutputFilterByType DEFLATE application/javascript | |
AddOutputFilterByType DEFLATE application/rss+xml | |
AddOutputFilterByType DEFLATE application/vnd.ms-fontobject | |
AddOutputFilterByType DEFLATE application/x-font | |
AddOutputFilterByType DEFLATE application/x-font-opentype | |
AddOutputFilterByType DEFLATE application/x-font-otf | |
AddOutputFilterByType DEFLATE application/x-font-truetype | |
AddOutputFilterByType DEFLATE application/x-font-ttf | |
AddOutputFilterByType DEFLATE application/x-javascript | |
AddOutputFilterByType DEFLATE application/xhtml+xml | |
AddOutputFilterByType DEFLATE application/xml | |
AddOutputFilterByType DEFLATE font/opentype | |
AddOutputFilterByType DEFLATE font/otf | |
AddOutputFilterByType DEFLATE font/ttf | |
AddOutputFilterByType DEFLATE image/svg+xml | |
AddOutputFilterByType DEFLATE image/x-icon | |
AddOutputFilterByType DEFLATE text/css | |
AddOutputFilterByType DEFLATE text/html | |
AddOutputFilterByType DEFLATE text/javascript | |
AddOutputFilterByType DEFLATE text/plain | |
AddOutputFilterByType DEFLATE text/xml | |
# Remove browser bugs (only needed for really old browsers) | |
BrowserMatch ^Mozilla/4 gzip-only-text/html | |
BrowserMatch ^Mozilla/4\.0[678] no-gzip | |
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html | |
Header append Vary User-Agent | |
</IfModule> | |
## Expires Caching ## | |
<IfModule mod_expires.c> | |
ExpiresActive On | |
ExpiresByType image/jpg "access plus 1 year" | |
ExpiresByType image/jpeg "access plus 1 year" | |
ExpiresByType image/gif "access plus 1 year" | |
ExpiresByType image/png "access plus 1 year" | |
ExpiresByType text/css "access plus 1 month" | |
ExpiresByType application/pdf "access plus 1 month" | |
ExpiresByType text/x-javascript "access plus 1 month" | |
ExpiresByType application/x-shockwave-flash "access plus 1 month" | |
ExpiresByType image/x-icon "access plus 1 year" | |
ExpiresDefault "access plus 2 days" | |
</IfModule> | |
## Add Expires headers ## | |
<IfModule mod_expires.c> | |
# Enable expirations | |
ExpiresActive On | |
# Default directive | |
ExpiresDefault "access plus 1 month" | |
# My favicon | |
ExpiresByType image/x-icon "access plus 1 year" | |
# Images | |
ExpiresByType image/gif "access plus 1 month" | |
ExpiresByType image/png "access plus 1 month" | |
ExpiresByType image/jpg "access plus 1 month" | |
ExpiresByType image/jpeg "access plus 1 month" | |
# CSS | |
ExpiresByType text/css "access plus 1 month" | |
# Javascript | |
ExpiresByType application/javascript "access plus 1 year" | |
</IfModule> | |
## Add correct content-type for fonts ## | |
AddType application/vnd.ms-fontobject .eot | |
AddType application/x-font-ttf .ttf | |
AddType application/x-font-opentype .otf | |
AddType application/x-font-woff .woff | |
AddType image/svg+xml .svg | |
# Compress compressible fonts | |
AddOutputFilterByType DEFLATE application/x-font-ttf application/x-font-opentype image/svg+xml | |
## Add a far future Expires header for fonts ## | |
ExpiresByType application/vnd.ms-fontobject "access plus 1 year" | |
ExpiresByType application/x-font-ttf "access plus 1 year" | |
ExpiresByType application/x-font-opentype "access plus 1 year" | |
ExpiresByType application/x-font-woff "access plus 1 year" | |
ExpiresByType image/svg+xml "access plus 1 year" | |
## Browser Cache ## | |
<IfModule mod_mime.c> | |
AddType text/css .css | |
AddType text/x-component .htc | |
AddType application/x-javascript .js | |
AddType application/javascript .js2 | |
AddType text/javascript .js3 | |
AddType text/x-js .js4 | |
AddType text/html .html .htm | |
AddType text/richtext .rtf .rtx | |
AddType image/svg+xml .svg | |
AddType text/plain .txt | |
AddType text/xsd .xsd | |
AddType text/xsl .xsl | |
AddType text/xml .xml | |
AddType video/asf .asf .asx .wax .wmv .wmx | |
AddType video/avi .avi | |
AddType image/bmp .bmp | |
AddType application/java .class | |
AddType video/divx .divx | |
AddType application/msword .doc .docx | |
AddType application/vnd.ms-fontobject .eot | |
AddType application/x-msdownload .exe | |
AddType image/gif .gif | |
AddType application/x-gzip .gz .gzip | |
AddType image/x-icon .ico | |
AddType image/jpeg .jpg .jpeg .jpe | |
AddType image/webp .webp | |
AddType application/json .json | |
AddType application/vnd.ms-access .mdb | |
AddType audio/midi .mid .midi | |
AddType video/quicktime .mov .qt | |
AddType audio/mpeg .mp3 .m4a | |
AddType video/mp4 .mp4 .m4v | |
AddType video/mpeg .mpeg .mpg .mpe | |
AddType video/webm .webm | |
AddType application/vnd.ms-project .mpp | |
AddType application/x-font-otf .otf | |
AddType application/vnd.ms-opentype ._otf | |
AddType application/vnd.oasis.opendocument.database .odb | |
AddType application/vnd.oasis.opendocument.chart .odc | |
AddType application/vnd.oasis.opendocument.formula .odf | |
AddType application/vnd.oasis.opendocument.graphics .odg | |
AddType application/vnd.oasis.opendocument.presentation .odp | |
AddType application/vnd.oasis.opendocument.spreadsheet .ods | |
AddType application/vnd.oasis.opendocument.text .odt | |
AddType audio/ogg .ogg | |
AddType application/pdf .pdf | |
AddType image/png .png | |
AddType application/vnd.ms-powerpoint .pot .pps .ppt .pptx | |
AddType audio/x-realaudio .ra .ram | |
AddType image/svg+xml .svg .svgz | |
AddType application/x-shockwave-flash .swf | |
AddType application/x-tar .tar | |
AddType image/tiff .tif .tiff | |
AddType application/x-font-ttf .ttf .ttc | |
AddType application/vnd.ms-opentype ._ttf | |
AddType audio/wav .wav | |
AddType audio/wma .wma | |
AddType application/vnd.ms-write .wri | |
AddType application/font-woff .woff | |
AddType application/font-woff2 .woff2 | |
AddType application/vnd.ms-excel .xla .xls .xlsx .xlt .xlw | |
AddType application/zip .zip | |
</IfModule> | |
<IfModule mod_expires.c> | |
ExpiresActive On | |
ExpiresByType text/css A31536000 | |
ExpiresByType text/x-component A31536000 | |
ExpiresByType application/x-javascript A31536000 | |
ExpiresByType application/javascript A31536000 | |
ExpiresByType text/javascript A31536000 | |
ExpiresByType text/x-js A31536000 | |
ExpiresByType text/html A31536000 | |
ExpiresByType text/richtext A31536000 | |
ExpiresByType image/svg+xml A31536000 | |
ExpiresByType text/plain A31536000 | |
ExpiresByType text/xsd A31536000 | |
ExpiresByType text/xsl A31536000 | |
ExpiresByType text/xml A31536000 | |
ExpiresByType video/asf A31536000 | |
ExpiresByType video/avi A31536000 | |
ExpiresByType image/bmp A31536000 | |
ExpiresByType application/java A31536000 | |
ExpiresByType video/divx A31536000 | |
ExpiresByType application/msword A31536000 | |
ExpiresByType application/vnd.ms-fontobject A31536000 | |
ExpiresByType application/x-msdownload A31536000 | |
ExpiresByType image/gif A31536000 | |
ExpiresByType application/x-gzip A31536000 | |
ExpiresByType image/x-icon A31536000 | |
ExpiresByType image/jpeg A31536000 | |
ExpiresByType image/webp A31536000 | |
ExpiresByType application/json A31536000 | |
ExpiresByType application/vnd.ms-access A31536000 | |
ExpiresByType audio/midi A31536000 | |
ExpiresByType video/quicktime A31536000 | |
ExpiresByType audio/mpeg A31536000 | |
ExpiresByType video/mp4 A31536000 | |
ExpiresByType video/mpeg A31536000 | |
ExpiresByType video/webm A31536000 | |
ExpiresByType application/vnd.ms-project A31536000 | |
ExpiresByType application/x-font-otf A31536000 | |
ExpiresByType application/vnd.ms-opentype A31536000 | |
ExpiresByType application/vnd.oasis.opendocument.database A31536000 | |
ExpiresByType application/vnd.oasis.opendocument.chart A31536000 | |
ExpiresByType application/vnd.oasis.opendocument.formula A31536000 | |
ExpiresByType application/vnd.oasis.opendocument.graphics A31536000 | |
ExpiresByType application/vnd.oasis.opendocument.presentation A31536000 | |
ExpiresByType application/vnd.oasis.opendocument.spreadsheet A31536000 | |
ExpiresByType application/vnd.oasis.opendocument.text A31536000 | |
ExpiresByType audio/ogg A31536000 | |
ExpiresByType application/pdf A31536000 | |
ExpiresByType image/png A31536000 | |
ExpiresByType application/vnd.ms-powerpoint A31536000 | |
ExpiresByType audio/x-realaudio A31536000 | |
ExpiresByType image/svg+xml A31536000 | |
ExpiresByType application/x-shockwave-flash A31536000 | |
ExpiresByType application/x-tar A31536000 | |
ExpiresByType image/tiff A31536000 | |
ExpiresByType application/x-font-ttf A31536000 | |
ExpiresByType application/vnd.ms-opentype A31536000 | |
ExpiresByType audio/wav A31536000 | |
ExpiresByType audio/wma A31536000 | |
ExpiresByType application/vnd.ms-write A31536000 | |
ExpiresByType application/font-woff A31536000 | |
ExpiresByType application/font-woff2 A31536000 | |
ExpiresByType application/vnd.ms-excel A31536000 | |
ExpiresByType application/zip A31536000 | |
</IfModule> | |
<IfModule mod_deflate.c> | |
AddOutputFilterByType DEFLATE text/css text/x-component application/x-javascript application/javascript text/javascript text/x-js text/html text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/bmp application/java application/msword application/vnd.ms-fontobject application/x-msdownload image/x-icon image/webp application/json application/vnd.ms-access video/webm application/vnd.ms-project application/x-font-otf application/vnd.ms-opentype application/vnd.oasis.opendocument.database application/vnd.oasis.opendocument.chart application/vnd.oasis.opendocument.formula application/vnd.oasis.opendocument.graphics application/vnd.oasis.opendocument.presentation application/vnd.oasis.opendocument.spreadsheet application/vnd.oasis.opendocument.text audio/ogg application/pdf application/vnd.ms-powerpoint image/svg+xml application/x-shockwave-flash image/tiff application/x-font-ttf application/vnd.ms-opentype audio/wav application/vnd.ms-write application/font-woff application/font-woff2 application/vnd.ms-excel | |
<IfModule mod_mime.c> | |
# DEFLATE by extension | |
AddOutputFilter DEFLATE js css htm html xml | |
</IfModule> | |
</IfModule> | |
<FilesMatch "\.(css|htc|less|js|js2|js3|js4|CSS|HTC|LESS|JS|JS2|JS3|JS4)$"> | |
FileETag MTime Size | |
<IfModule mod_headers.c> | |
Header set Pragma "public" | |
Header append Cache-Control "max-age=31536000, public" | |
Header unset Set-Cookie | |
Header set X-Powered-By "W3 Total Cache/0.9.7.2" | |
</IfModule> | |
</FilesMatch> | |
<FilesMatch "\.(html|htm|rtf|rtx|svg|txt|xsd|xsl|xml|HTML|HTM|RTF|RTX|SVG|TXT|XSD|XSL|XML)$"> | |
FileETag MTime Size | |
<IfModule mod_headers.c> | |
Header append Vary User-Agent env=!dont-vary | |
Header set Pragma "public" | |
Header append Cache-Control "max-age=31536000, public" | |
Header set X-Powered-By "W3 Total Cache/0.9.7.2" | |
</IfModule> | |
</FilesMatch> | |
<FilesMatch "\.(asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|webp|json|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|webm|mpp|otf|_otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|_ttf|wav|wma|wri|woff|woff2|xla|xls|xlsx|xlt|xlw|zip|ASF|ASX|WAX|WMV|WMX|AVI|BMP|CLASS|DIVX|DOC|DOCX|EOT|EXE|GIF|GZ|GZIP|ICO|JPG|JPEG|JPE|WEBP|JSON|MDB|MID|MIDI|MOV|QT|MP3|M4A|MP4|M4V|MPEG|MPG|MPE|WEBM|MPP|OTF|_OTF|ODB|ODC|ODF|ODG|ODP|ODS|ODT|OGG|PDF|PNG|POT|PPS|PPT|PPTX|RA|RAM|SVG|SVGZ|SWF|TAR|TIF|TIFF|TTF|TTC|_TTF|WAV|WMA|WRI|WOFF|WOFF2|XLA|XLS|XLSX|XLT|XLW|ZIP)$"> | |
FileETag MTime Size | |
<IfModule mod_headers.c> | |
Header set Pragma "public" | |
Header append Cache-Control "max-age=31536000, public" | |
Header unset Set-Cookie | |
Header set X-Powered-By "W3 Total Cache/0.9.7.2" | |
</IfModule> | |
</FilesMatch> | |
<FilesMatch "\.(bmp|class|doc|docx|eot|exe|ico|webp|json|mdb|webm|mpp|otf|_otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|pot|pps|ppt|pptx|svg|svgz|swf|tif|tiff|ttf|ttc|_ttf|wav|wri|woff|woff2|xla|xls|xlsx|xlt|xlw|BMP|CLASS|DOC|DOCX|EOT|EXE|ICO|WEBP|JSON|MDB|WEBM|MPP|OTF|_OTF|ODB|ODC|ODF|ODG|ODP|ODS|ODT|OGG|PDF|POT|PPS|PPT|PPTX|SVG|SVGZ|SWF|TIF|TIFF|TTF|TTC|_TTF|WAV|WRI|WOFF|WOFF2|XLA|XLS|XLSX|XLT|XLW)$"> | |
<IfModule mod_headers.c> | |
Header unset Last-Modified | |
</IfModule> | |
</FilesMatch> | |
<IfModule mod_headers.c> | |
Header set Referrer-Policy "" | |
</IfModule> | |
## CDN ## | |
<IfModule mod_headers.c> | |
Header set Access-Control-Allow-Origin "*" | |
</IfModule> | |
## Page Cache core ## | |
<IfModule mod_rewrite.c> | |
RewriteEngine On | |
RewriteBase / | |
RewriteCond %{HTTPS} =on | |
RewriteRule .* - [E=W3TC_SSL:_ssl] | |
RewriteCond %{SERVER_PORT} =443 | |
RewriteRule .* - [E=W3TC_SSL:_ssl] | |
RewriteCond %{https:X-Forwarded-Proto} =https [NC] | |
RewriteRule .* - [E=W3TC_SSL:_ssl] | |
RewriteCond %{https:Accept-Encoding} gzip | |
RewriteRule .* - [E=W3TC_ENC:_gzip] | |
RewriteCond %{HTTP_COOKIE} w3tc_preview [NC] | |
RewriteRule .* - [E=W3TC_PREVIEW:_preview] | |
RewriteCond %{REQUEST_METHOD} !=POST | |
RewriteCond %{QUERY_STRING} ="" | |
RewriteCond %{REQUEST_URI} \/$ | |
RewriteCond %{HTTP_COOKIE} !(comment_author|wp\-postpass|w3tc_logged_out|wordpress_logged_in|wptouch_switch_toggle) [NC] | |
RewriteCond "%{DOCUMENT_ROOT}/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}" -f | |
RewriteRule .* "/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.html%{ENV:W3TC_ENC}" [L] | |
RewriteCond %{REQUEST_METHOD} !=POST | |
RewriteCond %{QUERY_STRING} ="" | |
RewriteCond %{REQUEST_URI} \/$ | |
RewriteCond %{HTTP_COOKIE} !(comment_author|wp\-postpass|w3tc_logged_out|wordpress_logged_in|wptouch_switch_toggle) [NC] | |
RewriteCond "%{DOCUMENT_ROOT}/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.xml%{ENV:W3TC_ENC}" -f | |
RewriteRule .* "/wp-content/cache/page_enhanced/%{HTTP_HOST}/%{REQUEST_URI}/_index%{ENV:W3TC_SSL}%{ENV:W3TC_PREVIEW}.xml%{ENV:W3TC_ENC}" [L] | |
</IfModule> | |
## Skip 404 error handling by WordPress for static files ## | |
<IfModule mod_rewrite.c> | |
RewriteEngine On | |
RewriteCond %{REQUEST_FILENAME} !-f | |
RewriteCond %{REQUEST_FILENAME} !-d | |
RewriteCond %{REQUEST_URI} !(robots\.txt|[a-z0-9_\-]*sitemap[a-z0-9_\-]*\.(xml|xsl|html)(\.gz)?) | |
RewriteCond %{REQUEST_URI} \.(css|htc|less|js|js2|js3|js4|html|htm|rtf|rtx|svg|txt|xsd|xsl|xml|asf|asx|wax|wmv|wmx|avi|bmp|class|divx|doc|docx|eot|exe|gif|gz|gzip|ico|jpg|jpeg|jpe|webp|json|mdb|mid|midi|mov|qt|mp3|m4a|mp4|m4v|mpeg|mpg|mpe|webm|mpp|otf|_otf|odb|odc|odf|odg|odp|ods|odt|ogg|pdf|png|pot|pps|ppt|pptx|ra|ram|svg|svgz|swf|tar|tif|tiff|ttf|ttc|_ttf|wav|wma|wri|woff|woff2|xla|xls|xlsx|xlt|xlw|zip)$ [NC] | |
RewriteRule .* - [L] | |
</IfModule> | |
## LiteSpeed ## | |
<IfModule Litespeed> | |
SetEnv noabort 1 | |
</IfModule> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment