-
-
Save nadyshalaby/2347d5ef4fdc048e1e3b0d2136cbee6c to your computer and use it in GitHub Desktop.
Laravel Apache hide .env and several security settings via .htaccess
This file contains 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
RewriteEngine on | |
# Disable Directory listing | |
Options -Indexes | |
# Redirect Trailing Slashes If Not A Folder... | |
RewriteCond %{REQUEST_FILENAME} !-d | |
RewriteCond %{REQUEST_URI} (.+)/$ | |
RewriteRule ^ %1 [L,R=301] | |
RewriteCond %{REQUEST_URI} !^public | |
RewriteRule ^(.*)$ public/$1 [L] | |
# block files which needs to be hidden // in here specify .example extension of the file | |
<Files ~ "\.(env|env.example|json|config|config.js|md|gitignore|gitattributes|gitkeep|log|lock|ini|yml|xml|htaccess)$"> | |
Order allow,deny | |
Deny from all | |
</Files> | |
# in here specify full file name sperator '|' | |
<Files ~ "(artisan)$"> | |
Order allow,deny | |
Deny from all | |
</Files> | |
# GZIP compression for text files: HTML, CSS, JS, Text, XML, fonts | |
<IfModule mod_deflate.c> | |
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 | |
</IfModule> | |
# BEGIN Expire headers | |
<IfModule mod_expires.c> | |
# Turn on the module. | |
ExpiresActive on | |
# Set the default expiry times. | |
ExpiresDefault "access plus 2 days" | |
ExpiresByType image/jpg "access plus 1 month" | |
ExpiresByType image/svg+xml "access 1 month" | |
ExpiresByType image/gif "access plus 1 month" | |
ExpiresByType image/jpeg "access plus 1 month" | |
ExpiresByType image/png "access plus 1 month" | |
ExpiresByType text/css "access plus 1 month" | |
#ExpiresByType text/javascript "access plus 1 month" | |
#ExpiresByType application/javascript "access plus 1 month" | |
ExpiresByType application/x-shockwave-flash "access plus 1 month" | |
ExpiresByType image/ico "access plus 1 month" | |
ExpiresByType image/x-icon "access plus 1 month" | |
ExpiresByType text/html "access plus 600 seconds" | |
</IfModule> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment