目录:http://www.cnblogs.com/idefav2010/p/6785610.html

上篇文章,我们遗留的一个问题就是,请求数量有点多,虽然现在的浏览器的请求资源都是并发的。但是我们还是尽量减少请求量。

但是KISSY里面这个问题我们怎么解决呢,其实还是从data-config="{combine:false}"说起.

我们现在把combine设置成true试试

打开index.html发现页面没有正常运行,打开调试模式看看,发现报错了

有没有注意到请求的链接 file:///Users/**/Documents/Git/kissydemo/node_modules/kissy/build/??node.js,util.js,dom/base.js,event-dom/base.js,event-base.js,event-dom/focusin.js,anim/transition.js,anim/base.js,promise.js 这个是什么链接??

其实这个就是要使用阿里的一个静态资源合并模块,需要使用Nginx搭建一个静态资源服务器,并使用阿里开源的Nginx合并模块

好,下面我们就来搭建一个Nginx静态资源服务器

一、安装CentOS7

http://101.96.10.26/isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso

使用虚拟机安装完成后.

修改网络配置:

vi /etc/sysconfig/network-scripts/ifcfg-ens33

把onboot设置为yes

TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=2ae493cc-9228-4cb2-a70d-e0104935b95c
DEVICE=ens33
ONBOOT=yes

重启CentOS

然后使用 IP ADDR 查看IP地址使用Mac命令链接CentOS服务器

ssh idefav@192.168.146.129

输入密码后,登录到系统

使用 yum updae 更新系统,中间需要输入Y确认更新,然后等待更新完成.

使用 yum install vim 安装vim文本编辑器

二、安装Nginx

CentOS服务器我们装好了,现在我们安装Nginx

1.准备工作

由于nginx的一些模块依赖一些lib库,所以在安装nginx之前,必须先安装这些lib库,这些依赖库主要有g++、gcc、openssl-devel、pcre-devel和zlib-devel 所以执行如下命令安装

   yum install gcc-c++
yum install pcre pcre-devel
yum install zlib zlib-devel
yum install openssl openssl-devel
yum install git
  yum install wget

a)下载Nginx

http://nginx.org/download/

mkdir /usr/local/Nginx
cd /usr/local/Nginx
wget http://nginx.org/download/nginx-1.9.9.tar.gz
tar zxvf nginx-1.9.9.tar.gz

b)下载nginx-http-concat

git clone https://github.com/idefav/nginx-http-concat
mv nginx-http-concat /usr/local/src

c)编译

cd ./nginx-1.9.9
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --add-module=/usr/local/src/nginx-http-concat
make && make install

d)配置

创建Nginx账号ftpuser

adduser ftpuser
passwd ftpuser

使用vim打开nginx的配置文件

vim /usr/local/nginx/conf/nginx.conf

修改

user ftpuser;

server_name 192.168.146.129;
location /kissy/ {
concat on;
root /home/ftpuser/www;
concat_types text/css application/javascript;
concat_max_files 20;
concat_unique off;
}

在Nginx配置文件#gzip on; 下面加上如下配置来开启gzip

gzip  on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_disable "MSIE [1-6]\.";
gzip_vary off;
gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png application/javascript;
gzip_comp_level 2;

为了方便上传文件我们安装一个ftp服务

yum install vsftpd

配置ftp服务

vim /etc/vsftpd/vsftpd.conf

把匿名登录取消 anonymous_enable=NO

开启ipv4监听 listen=YES 关闭ipv6监听 listen_ipv6=NO

然后使用 service vsftpd start 开启ftp服务

最后就是要开放端口

80,20,21
以及被动模式端口:6000-7000
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=20/tcp --permanent
firewall-cmd --zone=public --add-port=21/tcp --permanent firewall-cmd --zone=public --add-port=6000-7000/tcp --permanent
 

重启防火墙

firewall-cmd --reload

用FileZilla连接服务器,并创建好 /home/ftpuser/www/kissy 目录

使用ftp把kissy文件上传上去

开启Nginx服务

/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

使用chrome访问 http://192.168.146.129/kissy/seed.js 看看是否访问的到

如果访问不到请检查配置.

三、测试

修改index.html中的路径 http://192.168.146.129/kissy/seed.js 并把combine设置为true

刷新页面发现,页面可以正常运行了

我们来看看chrome调试模式请求的链接

http://192.168.146.129/kissy/??node.js,util.js,dom/base.js,event-dom/base.js,event-base.js,event-dom/focusin.js,anim/transition.js,anim/base.js,promise.js

这个就是合并后的链接

四、结束语

使用KISSY框架可以动态加载所需要的模块,不用一次性加载所有的js文件。哪里需要才会加载相应的文件

最新文章

  1. HTML CSS SPRITE 工具
  2. 在设置app icon时的问题
  3. Html.DropDownList
  4. mac上用teamviewer远程windows输入问题
  5. c++中的数据类型
  6. YOLO: Real-Time Object Detection 安装和测试
  7. Android的面孔_Actiyity
  8. PLSQL配置介绍
  9. 使用Cloudsim实现基于多维QoS的资源调度算法之中的一个:配置Cloudsim环境
  10. 使用Spring MVC构建REST风格WEB应用
  11. 201521123088《java程序设计》第三周学习总结
  12. spring cloud eureka高可用
  13. Wsus Content内容误删处理
  14. [Swift]LeetCode410. 分割数组的最大值 | Split Array Largest Sum
  15. android -------- Hawk数据库
  16. web框架---django
  17. Linux查看与挂载新磁盘
  18. mysql replace into 的使用情况
  19. 课堂测试——jsp登录界面设计
  20. Oracle分区表删除分区数据时导致索引失效解决

热门文章

  1. Mysql的2003错误 cant connect to mysql 10060的解决
  2. FDG内存分配器笔记
  3. ubuntu14.04下chrome浏览器的安装
  4. [UWP]了解模板化控件(2):模仿ContentControl
  5. 模块化规范Common.js,AMD,CMD
  6. httpclient源码分析之 PoolingHttpClientConnectionManager 获取连接
  7. Oracle函数整理
  8. Excel图表-"DNA"图
  9. 老李分享:接电话之uiautomator 1
  10. Xmpp实现简单聊天系列 --- ②用户注册和登陆