.htaccess разрешает доступ и перенаправление на root index.php только для одного каталога

Я получаю некоторые проблемы с htaccess в моем новом проекте php. Я не мог найти никаких решений, поэтому я прошу здесь, надеюсь, что кто-то поможет мне.

1. Что мне нужно :

В корне URL-адреса, указывающие на существующие файлы и папки, недоступны, кроме / Public / и всех его папок и файлов (только для доступа / Public /). Urls, указывающие на файлы и папки, которые не существуют, будут перенаправлены на root index.php . / Public / также перенаправляется на root index.php , папки и файлы внутри него не являются (прямым доступом).

2. То, что я пробовал и не работаю:

<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_URI} !^/Public RewriteCond %{REQUEST_FILENAME} !^index\.php$ RewriteCond %{REQUEST_FILENAME} -f RewriteCond %{REQUEST_FILENAME} -d RewriteRule . - [F,L,NC] RewriteBase /Public/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L,QSA] </IfModule> ------------------------------------ <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_URI} !^/Public RewriteRule . - [F,L,NC] RewriteBase /Public/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L,QSA] </IfModule> ------------------------------------ <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} -f RewriteCond %{REQUEST_FILENAME} -d RewriteRule . - [F,L,NC] RewriteBase /Public/ RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L,QSA] </IfModule> 

Заранее спасибо 🙂