Привет всем.
Я запускаю CI параллельно статическому HTML-сайту со структурой каталогов, например:
- CI
- статические
- user_guide
- .htaccess
- index.php
И я использую следующее в моем файле .htaccess для получения статических файлов.
RewriteEngine On
RewriteRule ^(application) - [F,L]
DirectoryIndex /static/index.html
RewriteRule ^([a-z0-9_-]+)\.html$ /static/$1.html [L]
RewriteRule ^images/([a-z0-9_-]+)\.gif$ /static/images/$1.gif [L]
RewriteRule ^images/([a-z0-9_-]+)\.jpg$ /static/images/$1.jpg [L]
RewriteRule ^css/([a-z0-9_-]+)\.css$ /static/css/$1.css [L]
RewriteRule ^js/([a-z0-9_-]+)\.js$ /static/js/$1.js [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]
Я помещаю свои «активы» (изображения, CSS и т. Д.) В статическую структуру каталогов (поскольку большая часть того, что я использую в своих представлениях CI, заимствована из существующего сайта). Кажется, все работает нормально, за исключением одной вещи ...
Если я хочу включить плагин JQuery, вот так:
<script src="../../js/jquery.autocomplete.js"></script >
Этот файл не будет обработан, если я попытаюсь получить его непосредственно из адресной строки браузера.
Если я переименую файл из «jquery.autocomplete.js» в «autocomplete.js», то этот файл МОЖЕТ быть получен через запрос из адресной строки браузера, но, очевидно, не будет загружаться и работать правильно в моем JavaScript ( JavaScript прекращает выполнение именно в тот момент, когда вызывается функция autocomplete ():
$("#fld").autocomplete("ajax/val", {
width: 260,
selectFirst: false
});
Я пробовал варианты правила RewriteRule, которое применяется к каталогу / js, и, похоже, ничего не работает, но я всегда нащупываю в темноте в .htaccess. Кто-нибудь может помочь?
Это последнее, что я пробовал, и оно не работает:
RewriteRule ^js/jquery\.([a-z0-9_-]+)\.js$ /static/js/jquery.$1.js [L]
Спасибо за любую помощь.