Ответ 1
Изображения, css, javascript, pdfs, xml... все, что разрешено для доступа напрямую, не должно проживать в вашем каталоге приложений. Вы можете это сделать, но вы действительно не должны. Создайте новую папку в корне вашего каталога для этих файлов, их не следует смешивать с вашим приложением, например: в папке views
.
- Скорее всего, вы используете файл .htaccess, который позволяет доступ к некоторым каталогам через http. Это очень хорошо по соображениям безопасности, вы хотите прекратить любую попытку напрямую обращаться к вашим контроллерам и моделям. Вот почему мы проверяем, существует ли
BASEPATH
в верхней части большинства файлов, аexit('No direct script access.')
, если нет. - Чтобы получить правильный путь к этим ресурсам (js/css/images), вы не можете использовать относительные пути, потому что мы не используем обычную структуру каталогов. URL
/users/login
не загружает файлы из каталога/users/login
, он, вероятно, даже не существует. Это просто сегменты uri, которые использует bootstrap, чтобы знать, какой класс, метод и параметры использовать.
Чтобы получить правильный путь, используйте либо косую черту (если ваше приложение и активы находятся в корневом каталоге, а не в подкаталоге):
<img src="/images/myimage.jpg" />
Или ваш лучший выбор, используйте абсолютный URL:
// References your $config['base_url']
<img src="<?php echo site_url('images/myimage.jpg'); ?>" />
Эквивалент:
<img src="http://mydomain.com/images/myimage.jpg" />
В CI встроены помощники, которые вы также можете использовать, но это действительно все, что вам нужно знать.