Перепишите весь URL-адрес в index.php, за исключением '/Serene/Assets/'

Итак, у меня есть все мои перенаправления URL-адреса на index.php с этим в моем .htaccess:

RewriteEngine on
RewriteCond %{DOCUMENT_ROOT} !-f
RewriteRule ^(.*)$ index.php [QSA,L]

Однако мне не нужны URL-адреса, такие как http://localhost/Portfolio/Serene/Assets/css/style.css, но я не уверен, как?

Я бы очень признателен за любую помощь,

Приветствия.

EDIT: В качестве альтернативы я могу сказать, что htaccess не перенаправляет файлы .js,.css, изображений и т.д., но опять же, я не слишком уверен, как это сделать? Спасибо!

EDIT2: я мог бы перенаправить все, что заканчивается на .php или путь (например,/Portfolio/) на index.php, у меня есть ощущение, что это может быть проще.

EDIT3: Успех, окончательный код:

RewriteEngine on

RewriteCond %{DOCUMENT_ROOT} !-f
RewriteRule !\.(js|ico|gif|jpg|png|css|html|swf|flv|xml)$ index.php [QSA,L]

Ответ 1

Вот еще один способ сделать это:

RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ /index.php/$1 [L]

изображения, файл robots.txt не будет переписан на index.php. Просто добавьте свои каталоги/файлы.

Надеюсь, что это поможет!

Ответ 2

Это перепишет запросы на любые файлы, которые не существуют на сервере, на index.php:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-l

RewriteRule .* index.php [L]