Использует ли echo base_url ();назвать CSS, изображения и файлы Javascript замедлить работу сайта? - PullRequest
0 голосов
/ 06 января 2012

Я использую Codeigniter.Я храню свои изображения, файлы CSS и Javascript в папке с именем «support» в корне документа моего приложения.Таким образом, моя корневая папка документа выглядит следующим образом:

.settings
application 
support
system
.buildpath
.project
 index
.htacces

Теперь мой вопрос - заставит ли мой веб-сайт загружаться, так как мне приходится использовать <? echo base_url();?>support/ каждый раз, когда мне нужно что-то получить из папки поддержки??Поскольку вы видите, когда я использую <? echo base_url();?>, я на самом деле звоню по полному адресу веб-сайта ... и у меня есть 7 CSS-файлов и 13 javascript-файлов для вызова из "службы поддержки", поэтому для загрузки веб-сайта определенно потребуется время.(Пожалуйста, поправьте меня, если я ошибаюсь).Если вы думаете, что это может замедлить работу веб-сайта, скажите, пожалуйста, куда именно я должен поместить мои CSS, изображения и файлы javascript. Я слышал, что представления не подходят для этого.

Заранее спасибо:)

1 Ответ

1 голос
/ 06 января 2012

Этот вопрос, вероятно, больше, чем вы думаете.

Прежде всего, использование <? echo base_url();?> вместо «жесткого кодирования» вашего веб-адреса не замедлит работу вашего сайта. Такой вызов функции очень незначителен для скорости загрузки ваших страниц.

Я думаю, что другая часть вашего вопроса касается архитектуры .

Когда вы думаете о скорости для вашего сайта, вам нужно знать, какие факторы замедляют загрузку вашей страницы. (Хотя это и не полный список, это поможет в вашем случае):

  1. количество файлов (изображений, css, javascript и т. Д.), Которые необходимо загрузить для вашей страницы
  2. кеш-способность этих файлов
  3. некоторые бессмысленные заголовки на стороне сервера (электронные теги и т. Д.)
  4. обработка для создания ваших php-страниц
  5. размер вашей страницы

Теперь, в вашем случае, я бы порекомендовал поместить все ваши "статические" файлы в корневой каталог документа в папку (скажем, static). Затем получите доступ ко всем в ваших «представлениях» с помощью функции base_url().

Таким образом, ваша страница, когда она доставляется в браузер, будет выполнять внешние вызовы для этих статических файлов - позволяя браузеру кэшировать все эти файлы (при условии, что заголовки настроены правильно). Если вы помещаете их в представления, то они фактически добавляются на запрашиваемую страницу. Итак, следующая запрашиваемая страница должна снова загрузить эти файлы вместе с запрашиваемой второй страницей. Имеет смысл?

Чтобы помочь с «количеством файлов», вы всегда можете объединить и свернуть любой имеющийся у вас css / javascript. Таким образом, вместо того, чтобы загружать и кэшировать в браузере файлы 8 js, вы можете подать ему файл 1 js со всем вашим кодом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...