Skip to content
Advertisement

How to protect ASSETS FOLDER in codeigniter

I just wanna protect my assets folder in client side. All of my files can access public. I wanna protect it. I have rules .htaccess like below, any wrong rules there?

RewriteEngine on
RewriteCond $1 !^(index.php|assets|robots.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]

Advertisement

Answer

You can do two things

  1. via .htaccess (Not Tested)
  2. via index.html

1. .htaccess

add .htaccess inside the assets folder

<IfModule authz_core_module>
    Require all denied
</IfModule>
<IfModule !authz_core_module>
    Deny from all
</IfModule>

2. index.html

Create index.html file inside the directory and add this

<!DOCTYPE html>
<html>
<head>
    <title>403 Forbidden</title>
</head>
<body>

<p>Directory access is forbidden.</p>

</body>
</html>

Output

When some one access outside you get this on browser

Directory access is forbidden.

User contributions licensed under: CC BY-SA
3 People found this is helpful
Advertisement