目录: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文件。哪里需要才会加载相应的文件

[KISSY5系列]KISSY5安装使用(二)的更多相关文章

  1. [KISSY5系列]KISSY5安装使用(一)

    本文将从零开始安装KISSY环境 一.安装nodejs 从nodejs网站下载nodejs安装 地址: https://nodejs.org/en/download/ 二.下载KISSY 下载地址:  ...

  2. [KISSY5系列]淘宝全终端框架 KISSY 5--从零开始使用

    KISSY 是淘宝一个开源的 JavaScript 库,包含的组件有:日历.图片放大镜.卡片切换.弹出窗口.输入建议等 一.简介 KISSY 是一款跨终端.模块化.高性能.使用简单的 JavaScri ...

  3. [转]gitlab cicd (二)系列之安装git-runner rpm安装方式

    本文转自:https://blog.csdn.net/qq_21816375/article/details/84308748 本编是继gitlab cicd (一)系列之安装gitlb之后,基于安装 ...

  4. Django 系列博客(二)

    Django 系列博客(二) 前言 今天博客的内容为使用 Django 完成第一个 Django 页面,并进行一些简单页面的搭建和转跳. 命令行搭建 Django 项目 创建纯净虚拟环境 在上一篇博客 ...

  5. Nginx技术研究系列3-OpenResty安装配置

    上两篇中介绍了: Ngnix技术研究系列1-通过应用场景看Nginx的反向代理 Ngnix技术研究系列2-基于Redis实现动态路由 发现,应该加一篇OpenResty的安装部署说明,方便大家按图索骥 ...

  6. Xbin-Store(分布式商城)项目所用Linux服务系列 FastDFS安装(五)

    系列 Xbin-Store(分布式商城)项目所用Linux服务系列 MySQL安装(一) Xbin-Store(分布式商城)项目所用Linux服务系列 Redis集群安装(二) Xbin-Store( ...

  7. IPFS系列 多节点搭建 二

    IPFS系列 多节点搭建 二 上一篇介绍了IPFS的分布式点对点超媒体传输协议的背景和安装介绍,本篇将继续指导搭建多节点的IPFS私有网络 文件服务.如果没还没开始搭建IPFS节点的小伙伴, 请戳此链 ...

  8. Docker 技术系列之安装多版本Mysql5.6和Mysql5.7

    大家好,后面的就不是关于MAC专有的内容,基本是跟Java环境,基础技术方面有关.所以这个教程对于在linux系统还是macOS都是通用的,不用担心. 上一篇,我们安装好对应的Docker之后,感受到 ...

  9. Docker 技术系列之安装Docker Desktop for Mac

    终于要进入到Docker技术系列了,感谢大家的持续关注. 为什么要选择Docker?因为Docker 轻巧快速,提供了可行.经济.高效的替代方案.举个例子,安装Nginx,Mysql,Redis等常用 ...

随机推荐

  1. TypeScript设计模式之中介者、观察者

    看看用TypeScript怎样实现常见的设计模式,顺便复习一下. 学模式最重要的不是记UML,而是知道什么模式可以解决什么样的问题,在做项目时碰到问题可以想到用哪个模式可以解决,UML忘了可以查,思想 ...

  2. PHP测试题讲解(20161027)

    注: 关联数组 关联数组,它的每个 ID 键都关联一个值.在存储有关具体命名的值的数据时,使用数值数组不是最好的做法.通过关联数组,我们可以把值作为键,并向它们赋值. 例子 1 在本例中,我们使用一个 ...

  3. HTML里为什么不能在<p>标签中嵌套<div>标签

    学习过HTML语言的人都应该知道,在HTML里,有分块级元素和内联元素:例如我们常用到的div,o,ul,dl,table,h1...h6等,这些都是块级元素:而像a,b,i,em,img,span等 ...

  4. resin远程调试配置,connection refused问题解决

    http://john521.iteye.com/blog/1879805 这篇博客中讲的很好. 我在配置的过程中遇到了几个问题,记录一下: 1. 调试服务器监听的端口号,百度的开发机都限制了端口在某 ...

  5. C#实现不影响当前线程情况下间隔一定的时间执行一段代码

    大家知道C#间隔一定时间去执行一段代码,常用的有 1. Thread.Sleep(多少毫秒); 2. 使用Timer控件间隔一定的时间,设置执行一次 以上两种方法,实现起来不难,弊端在于会阻塞当前线程 ...

  6. ajax ----进度条的原理

    一.进度条的原理 新知识点:Html5中FormData,xmlHttpRequest中的upload属性,progress事件监控 xmlHttpRequest中的upload属性,实现: < ...

  7. 将 shell 脚本打包到 rpm 包中

    下以操作最好在虚拟机上操作:如 Docker 最方便了 1. 安装 rpmbuild yum -y install rpmbuild  rpmdevtools -y 2. 生成打包路径 使用 rpmd ...

  8. HTTP相关整理(上)

    这次整理HTTP相关知识点的初衷是因为项目中有大量与网络请求相关的知识细节点,所以这次整理的更多的是日常中用得到的点(参考图解HTTP),另外给打算做FE的新人们一些建议:多重视网络这方面的知识.文章 ...

  9. IOS开发创建开发证书及发布App应用(六)——打包应用

    6.打包应用 如下图,生成之后点击下面红框的按钮,按时间排序,然后点最新的一次生成 从右侧生成日志中找到如下图红框标识的部分,找到 -output ,把下面浅蓝色选中,这是app生成的文件夹路径 点击 ...

  10. SPOJ-ANTP [组合数学]

    tags:[组合][预处理]题解:关于方程A+C+B=X的正整数解组数.我们用插板法可知,解的组数=在(X-1)个元素中选择两个元素的方案数故答案为:C(x-1,2)+C(x,2)+C(x+1,2)+ ...