Мой предпочтительный способ сделать это - использовать такой инструмент сжатия, как YUI Compressor и сделать его частью процесса сборки (после минимизации степень сжатия не будет такой высокой. Или вы можете используйте оба. Суть в том, что вы не должны пропустить проблему с большей производительностью, приведенную ниже).
Одна из основных проблем со сжатием IIS заключается в том, что он не упаковывает все файлы JS / CSS в один файл. Так что, если на вашем сайте 7 файлов JS и 20 CSS (что удивительно, это очень часто встречается), для получения ваших данных потребуется 27 циклов HTTP. Написание обработчика HTTP для этого - хорошая идея для людей с общим хостингом.
Простой алгоритм сборки будет иметь файл make в корневом каталоге JS / CSS
If(build.config == release) {
Add your js file in order to the make files.
e.g. jQuery.js jQuery.form.js jQuery.container.js custom.js
Split and pass it as params to YUI
Compress
O/P to site.js
Delete all the above files.
}
В режиме релиза ваш мастер страницы должен ссылаться только на site.js
Редактировать : Вот ссылка для интегрирования YUI и nant.
Редактировать : Джастин Этередж выпустил потрясающий инструмент для объединения и сжатия файла css / js под названием SquishIt .