网站建设思路梳理,知乎网页版,做播放器电影网站需要多少钱6,适合公司建设的网站一. 负载均衡的作用有哪些#xff1f;
1、转发功能
按照一定的算法【权重、轮询】#xff0c;将客户端请求转发到不同应用服务器上#xff0c;减轻单个服务器压力#xff0c;提高
系统并发量。
2、故障移除
通过心跳检测的方式#xff0c;判断应用服务器当前是否可以正常…一. 负载均衡的作用有哪些
1、转发功能
按照一定的算法【权重、轮询】将客户端请求转发到不同应用服务器上减轻单个服务器压力提高
系统并发量。
2、故障移除
通过心跳检测的方式判断应用服务器当前是否可以正常工作如果服务器期宕掉自动将请求发送到
其他应用服务器。
3、恢复添加
如检测到发生故障的应用服务器恢复工作自动将其添加到处理用户请求队伍中。二. nginx实现负载均衡的分发策略
Nginx 的 upstream目前支持的分配算法
1)、轮询 ——11 轮流处理请求默认
每个请求按时间顺序逐一分配到不同的应用服务器如果应用服务器down掉自动剔除剩下的继续轮询。
2)、权重 ——you can you up通过配置权重指定轮询几率权重和访问比率成正比用于应用服务器性能不均的情况。
3)、ip_哈希算法每个请求按访问ip的hash结果分配这样每个访客固定访问一个应用服务器可以解决session共享
的问题nginx做负载均衡实现的策略有哪些
轮询默认
权重
ip_hash
fair(第三方插件
url_hash第三方插件nginx做负载均衡用到哪些模块
upstream 定义负载节点池。location 模块 进行URL匹配。proxy模块 发送请求给upstream定义的节点池。
负载均衡有那些实现方式
硬件负载HTTP重定向负载均衡DNS负载均衡反向代理负载均衡IP层负载均衡数据链路层负载均衡
nginx如何实现四层负载
四层负载分为动态和静态负载 Nginx的四层静态负载均衡需要启用ngx_stream_core_module模块 默认情况下ngx_stream_core_module是没有启用的需要在安装Nginx时添加–with-stream配置
参数启用 配置HTTP负载均衡时都是配置在http指令下配置四层负载均衡则是在stream指令下结构如下所示
stream {
upstream mysql_backend {
server 192.168.175.100:3306 max_fails2 fail_timeout10s weight1;
least_conn;
}
server { #监听端口默认使用的是tcp协议如果需要UDP协议则配置成listen 3307 udp;
listen 3307; #失败重试 proxy_next_upstream on;
proxy_next_upstream_timeout 0;
proxy_next_upstream_tries 0; #超时配置 #配置与上游服务器连接超时时间默认60s
proxy_connect_timeout 1s; #配置与客户端上游服务器连接的两次成功读/写操作的超时时间如果超
时将自动断开连接 #即连接存活时间通过它可以释放不活跃的连接默认10分钟 proxy_timeout 1m;
#限速配置 #从客户端读数据的速率单位为每秒字节数默认为0不限速 proxy_upload_rate 0; #从
上游服务器读数据的速率单位为每秒字节数默认为0不限速 proxy_download_rate 0; #上游服务器
proxy_pass mysql_backend;
}
}使用Nginx的四层动态负载均衡有两种方案使用商业版的Nginx和使用开源的nginx-stream-upsyncmodule模块。注意四层动态负载均衡可以使用nginx-stream-upsync-module模块七层动态负载均 衡可以使用nginx-upsync-module模块。
你知道的web服务有哪些
apachenginxIIStomcatlighttpdweblogic
为什么要用nginx
跨平台、配置简单非阻塞、高并发连接处理2-3万并发连接数官方监测能支持5万并发内存消耗小开启10个nginx才占150M内存 nginx处理静态文件好,耗费内存少,内置的健康检查功能如果有一个服务器宕机会做一个健康检查再发送的请求就不会发送到宕机的服务器了。重新将请求提交到其他的节点上。节省宽带支持GZIP压缩可以添加浏览器本地缓存稳定性高宕机的概率非常小接收用户请求是异步的
nginx的性能为什么比apache高
nginx采用的是epoll模型和kqueue网络模型而apache采用的是select模型 举一个例子来解释两种模型的区别 菜鸟驿站放着很多快件以前去拿快件都是短信通知你有快件然后你去了之后负责菜鸟驿站的人在 一堆快递里帮你找直到找到为止。 但现在菜鸟驿站的方式变了他会发你一个地址比如 3-3-5009. 这个就是第三个货架的第三排从做 往右第九个。 如果有几百个人同时去找快递这两种方式哪个更有效率不言而喻。 之前还看到这个例子也比较形象
假设你在大学读书住的宿舍楼有很多间房间你的朋友要来找你。
select版宿管大妈就会带着你的朋友挨个房间去找直到找到你为止。
而epoll版宿管大妈会先记下每位同学的房间号
你的朋友来时只需告诉你的朋友你住在哪个房间即可不用亲自带着你的朋友满大楼找人。
如果来了10000个人都要找自己住这栋楼的同学时select版和epoll版宿管大妈谁的效率更高不言自
明。
同理在高并发服务器中轮询I/O是最耗时间的操作之一select和epoll的性能谁的性能更高同样十分
明了select 采用的是轮询的方式来处理请求轮询的次数越多耗时也就越多
epoll的组成
epoll的接口非常简单一共就三个函数
1. int epoll_create(int size);
创建一个epoll的句柄size用来告诉内核这个监听的数目一共有多大。
这个参数不同于select()中的第一个参数给出最大监听的fd1的值。
需要注意的是当创建好epoll句柄后它就是会占用一个fd值在linux下如果查看/proc/进程id/fd/
是能够看到这个fd的所以在使用完epoll后必须调用close()关闭否则可能导致fd被耗尽。
2. int epoll_ctl(int epfd, int op, int fd, struct epoll_event *event);
epoll的事件注册函数它不同与select()是在监听事件时告诉内核要监听什么类型的事件
而是在这里先注册要监听的事件类型。第一个参数是epoll_create()的返回值
第二个参数表示动作用三个宏来表示
EPOLL_CTL_ADD注册新的fd到epfd中
EPOLL_CTL_MOD修改已经注册的fd的监听事件
EPOLL_CTL_DEL从epfd中删除一个fd
第三个参数是需要监听的fd第四个参数是告诉内核需要监听什么事
3. int epoll_wait(int epfd, struct epoll_event * events, int maxevents, int
timeout);
等待事件的产生类似于select()调用。
参数events用来从内核得到事件的集合maxevents告之内核这个events有多大这个 maxevents的值不
能大于创建epoll_create()时的size参数timeout是超时时间毫秒0会立即返回-1将不确定也
有说法说是永久阻塞。
该函数返回需要处理的事件数目如返回0表示已超时nginx和apache的区别
Nginx 轻量级采用 C 进行编写同样的 web 服务会占用更少的内存及资源 抗并发nginx 以 epoll and kqueue 作为开发模型处理请求是异步非阻塞的负载能力比 apache 高很多而 apache 则是阻塞型的。在高并发下 nginx 能保持低资源低消耗高性能 而 apache 在 PHP 处理慢或者前端压力很大的情况下很容易出现进程数飙升从而拒绝服务的现 象。 nginx 处理静态文件好静态处理性能比 apache 高三倍以上 nginx 的设计高度模块化编写模块相对简单 nginx 配置简洁正则配置让很多事情变得简单而且改完配置能使用 -t 测试配置有没有问题 apache 配置复杂 重启的时候发现配置出错了会很崩溃 nginx 作为负载均衡服务器支持 7 层负载均衡 七层负载可以有效的防止ddos攻击 nginx本身就是一个反向代理服务器也可以左右邮件代理服务器来使用 Apache apache 的 rewrite 比 nginx 强大在 rewrite 频繁的情况下用 apache apache 发展到现在模块超多基本想到的都可以找到 apache 更为成熟少 bug nginx 的 bug 相对较多 apache 对 PHP 支持比较简单nginx 需要配合其他后端用 apache 在处理动态请求有优势nginx 在这方面是鸡肋一般动态请求要 apache 去做nginx 适 合静态和反向。 apache 仍然是目前的主流拥有丰富的特性成熟的技术和开发社区 两者最核心的区别在于 apache 是同步多进程模型一个连接对应一个进程而 nginx 是异步的多个 连接万级别可以对应一个进程。 需要稳定用apache需要高性能用nginx
nginx常用的命令
启动 nginx 。
停止 nginx -s stop 或 nginx -s quit 。
重载配置 ./sbin/nginx -s reload(平滑重启) 或 service nginx reload 。
重载指定配置文件 .nginx -c /usr/local/nginx/conf/nginx.conf 。
查看 nginx 版本 nginx -v 。
检查配置文件是否正确 nginx -t 。
显示帮助信息 nginx -h 。什么是反向代理什么是正向代理以及区别
正向代理 所谓的正向代理就是 需要在用户端去配置的。配置完再去访问具体的服务这叫正向代理 正向代理其实是代理服务器代理了客户端去和目标服务器进行交互。 正向代理的用途
提高访问速度隐藏客户真实IP 反向代理 反向代理是 在服务端的不需要访问用户关心。用户访问服务器A, A服务器是代理服务器将用户服务再转发到服务器B.这就是反向代理 反向代理的作用 1.缓存将服务器的响应缓存在自己的内存中减少服务器的压力。 2.负载均衡将用户请求分配给多个服务器。 3.访问控制
Squid、Varinsh、Nginx 有什么区别
三者都实现缓存服务器的作用 Nginx本来是反向代理/web服务器用了插件可以做做这个副业(缓存服务器)。但本身支持的特性 不是很多只能缓存静态文件 varinsh 和squid是专业的cache服务而nginx这些需要使用第三方模块 varnish本身在技术上的优势要高于squid它采用了可视化页面缓存技术。
在内存的利用上Varnis h比 Squid 具有优势性能要比 Squid 高。
还有强大的通过 Varnish 管理端口可以使用正则表达式快速、批量地清除部分缓存
Varnish 是内存缓存速度一流但是内存缓存也限制了其容量缓存页面和图片一般是挺好的。要做 cache 服务的话我们肯定是要选择专业的 cache 服务优先选择Squid 或者 Varnish
nginx是如何处理http请求的
四个步骤 读取解析请求行 读取解析请求头 开始最重要的部分即多阶段处理
nginx把请求处理划分成了11个阶段也就是说当nginx读取了请求行和请求头之后将请求封装了结构体ngx_http_request_t然后每个阶段的handler都会根据这个ngx_http_request_t对请求进行处理例如重写uri权限控制路径查找生成内容以及记录日志等等最后将结果放回给客户单。 也可以这么回答
首先Nginx 在启动时会解析配置文件得到需要监听的端口与 IP 地址然后在 Nginx 的Master 进程里面先初始化好这个监控的Socket(创建 S ocket设置 addr、reuse 等选项绑定到 指定的 ip 地址端口再 listen 监听)。然后再 fork(一个现有进程可以调用 fork 函数创建一个新进程。由 fork 创建的新进程被称为子进 程 )出多个子进程出来。之后子进程会竞争 accept 新的连接。此时客户端就可以向 nginx 发起连接了。当客户端与 nginx进行三次握手与 nginx 建立好一个连接后。此时某一个子进程会 accept 成功得到这个 建立好的连接的 Socket 然后创建 nginx 对连接的封装即 ngx_connection_t 结构体。接着设置读写事件处理函数并添加读写事件来与客户端进行数据的交换。 最后Nginx 或客户端来主动关掉连接到此一个连接就寿终正寝了。
nginx虚拟主机有哪些
基于域名的虚拟主机 基于端口的虚拟主机 基于IP的虚拟主机
Nginx 怎么实现后端服务的健康检查
利用 nginx 自带模块 ngx_http_proxy_module 和 ngx_http_upstream_module 对后端节点做健康检查利用 nginx_upstream_check_module 模块对后端节点做健康检查。推荐此方法
nginx的优化你都做过哪些
. gzip压缩优化expires缓存有还网络IO事件模型优化隐藏软件名称和版本号防盗链优化禁止恶意域名解析禁止通过IP地址访问网站HTTP请求方法优化防DOS攻击单IP并发连接的控制与连接速率控制
. 严格设置web站点目录的权限
. 将nginx进程以及站点运行于监牢模式
. 通过robot协议以及HTTP_USER_AGENT防爬虫优化
. 配置错误页面根据错误码指定网页反馈给用户
. nginx日志相关优化访问日志切割轮询不记录指定元素日志、最小化日志目录权限
. 限制上传到资源目录的程序被访问防止木马入侵系统破坏文件
. FastCGI参数buffer和cache配置文件的优化
. php.ini和php-fpm.conf配置文件的优化
. 有关web服务的Linux内核方面深度优化网络连接、IO、内存等
. nginx加密传输优化SSL
. web服务器磁盘挂载及网络文件系统的优化
. 使用nginx cache一 配置文件中对优化有明显效果的
1. worker_processes 8;
nginx 进程数建议按照cpu 数目来指定一般为它的倍数 (如,2个四核的cpu计为8)。
2. worker_cpu_affinity 00000001 00000010 00000100 00001000 00010000 00100000
01000000 10000000;
为每个进程分配cpu上例中将8 个进程分配到8 个cpu当然可以写多个或者将一个进程分配到多
个cpu。
3. worker_rlimit_nofile 65535;
这个指令是指当一个nginx 进程打开的最多文件描述符数目理论值应该是最多打开文件数ulimit
-n与nginx 进程数相除但是nginx 分配请求并不是那么均匀所以最好与ulimit -n 的值保持一致。
现在在linux 2.6内核下开启文件打开数为65535worker_rlimit_nofile就相应应该填写
65535。这是因为nginx调度时分配请求到进程并不是那么的均衡所以假如填写10240总并发量达到3-4万
时就有进程可能超过10240了这时会返回502错误。
4. use epoll
5. worker_connections 65535
每个进程允许的最多连接数 理论上每台nginx 服务器的最大连接数为
worker_processes*worker_connections。
6. keepalive_timeout 60;
7. client_header_buffer_size 4k;
客户端请求头部的缓冲区大小这个可以根据你的系统分页大小来设置一般一个请求头的大小不会超过1k
8. open_file_cache max65535 inactive60s;
这个将为打开文件指定缓存默认是没有启用的max 指定缓存数量建议和打开文件数一致
inactive 是指经过多长时间文件没被请求后删除缓存。
9. open_file_cache_valid 80s;
这个是指多长时间检查一次缓存的有效信息。
10. open_file_cache_min_uses 1;
open_file_cache 指令中的inactive 参数时间内文件的最少使用次数如果超过这个数字文件
描述符一直是在缓存中打开的如上例如果有一个文件在inactive 时间内一次没被使用它将被移除。nginx的session不同步怎么办
我们可以采用ip_hash指令解决这个问题如果客户已经访问了某个服务器当用户再次访问时会将该 请求通过哈希算法自动定位到该服务器。即每个访客固定访问一个后端服务器可以解决session的问 题。 其他办法那就是用spring_sessionredis把session放到缓存中实现session共享
nginx的常用模块有哪些
1、ngx_http_core_module #包括一些核心的http参数配置对应Nginx的配置为HTTP区块部分
2、ngx_http_access_module #访问控制模块用来控制网站用户对Nginx的访问
3、ngx_http_gzip_module #压缩模块对Nginx返回的数据压缩属于性能优化模块
4、ngx_http_fastcgi_module #FastCGI模块和 动态应用相关的模块例如PHP5、ngx_http_proxy_module #Proxy代理模块
6、ngx_http_upstream_module #负载均衡模块可以实现网站的负载均衡功能及节点的健康检查
7、ngx_http_rewrite_module #URL地址重写模块
8、ngx_http_limit_conn_module #限制用户并发连接数及请求数模块防止ddos
9、ngx_http_limit_req_module #根据定义的key限制Nginx请求过程的速率
10、ngx_http_log_module #访问日志模块以指定的格式记录Nginx客户访问日志等信息
11、ngx_http_auth_basic_module #Web认证模块设置Web用户通过账号、密码访问Nginx
12、ngx_http_ssl_module #ssl模块用于加密的http连接如https
13、ngx_http_stub_status_module #记录Nginx基本访问状态信息等模块
nginx各个版本的区别
Nginx官网提供了三个类型的版本
Mainline versionMainline 是 Nginx 目前主力在做的版本可以说是开发版
Stable version最新稳定版生产环境上建议使用的版本
Legacy versions遗留的老版本的稳定版nginx默认配置文件
在 nginx 的配置文件中大概分为几个区域events {}、http {}、和没有被 {}包裹的区域。而 http {} 中还有 server {}以及 server {} 中的 location {}。结构如下
worker_processes 1;
events {
worker_connections 1024;
}
http {
...
server {
...
location {
...
}
}server {
...
}
}没有被 {} 包裹的部分为全局配置如 worker_processes 1; 设置工作进程子进程数为 1 events {} 为 nginx 连接配置的模块如 worker_connections 1024; 设置每一个子进程最大允许连 接 1024 个连接 http {} 为 nginx http 核心配置模块 server {} 为虚拟主机配置模块包括监听端口、监听域名等 location {} URI 匹配
location的规则
在 Nginx 的配置文件中通常会用两个常用的区块(Block)来进行设置 1.Server 区块 2.Localtion 区块 sever 区块主要是真的主机的配置比如配置主机的域名IP端口等内容。当然在一个 Nginx 的配 置文件里面我们是可以指定多个 Sever 区块的配置的。 而 Location 区块则是在 Sever 区块里面细分到针对不同的路径和请求而进行的配置。因为一个站点中 的 URI 通常会非常多所以在 Location 区块设置这部分你也是可以写多个 Location 的配置的。
location optional_modifier location_match {
# 这个 {} 里面的配置内容就是一个区块 Block
}上面的 optional_modifier 配置项是可以使用正则表达式的。常用的几种如下:
留空。在留空的情况下配置表示请求路径由 location_match 开始。等于号还是非常容易理解的就是请求路径正好等于后面的 location_match 的值跟第一项留空还
是有区别的。
~飘号注意是英文输入的飘号表示大小写敏感的正则匹配。
~*表示大小写不敏感的正则匹配。
^~ 表示这里不希望有正则匹配发生。nginx 处理localtion区块的顺序
每一个请求进来 Nginx 之后Nginx 就会选择一个 Location 的最佳匹配项进行响应处理的具体流程
是逐一跟 location 的配置进行比对这个步骤可以分为以下几步
先进行前缀式的匹配也就是 location 的 optional_modifier 为空的配置。Nginx 其次会根据 URI 寻找完全匹配的 location 配置也就是 location 的 optional_modifier
为 的配置.
如果还是没有匹配到那就先匹配 ^~ 配置如果找到一个配置的话则会停止寻找过程直接返回响应内
容。
如果还是没有找到匹配项的话则会先进行大小写敏感的正则匹配然后再是大小不写敏感的正则匹配举例子
location / {# 等号配置符只匹配 / 这个路由
}
location /data {
# 留空配置会匹配有 /data 开始的路由后续有匹配会往下匹配。
}
location ^~ /img/ {
# 注意 ^~ 配置这里匹配到 /img/ 开始的话直接就返回了。
}
location ~* .(png|gif|ico|jpg|jpeg)$ {
# 匹配以 png, gif, ico, jpg or jpeg 结尾的请求这个通常用来设置图片的请求响应。
}
配置nginx防盗链
Nginx的防盗链原理是加入location项用正则表达式过渡图片类型文件对于信任的网址可以正常使用
对于不信任的网址则返回相应的错误图片在源主机bt.com的配置文件中加入以下代码
vi /usr/local/nginx/conf/nginx.conf
location ~*\.(jpg|gif|swf)$ {
valid_referers none blocked *.test.com test.com;
if ($invalid_referer) {
rewrite ^/http://www.bt.com/error.png;
}
}
下面分析一下这段代码
~*\.(jpg|gif|swf)$这段正则表达式表示匹配不区分大小写以.jpg或.gif或.swf结尾的文件。
valid_referers设置信任的网站可以正常使用图片。
none浏览器中referer为空的情况这就是直接在浏览器访问图片。
blocked浏览器中referer不可空的情况但是值被代理或防火墙删除了这些值不以http://或
https://开头。
后面的网站或者域名referer中包含相关字符串的网址。
if语句如果链接的来源域名不在valid_referers所列出的列表中$invalid_referer为1则执行后
面的操作即进行重写或返回403页面。
把图片error.png放到源主机bt.com的工作目录下。
ls /usr/local/nginx/html
50x.html index.html logo.jpg error.png
这是重启服务器重新访问http://www.test.com/index.html显示的是被重写的图片。
文章转载自: http://www.morning.qbwbs.cn.gov.cn.qbwbs.cn http://www.morning.nrchx.cn.gov.cn.nrchx.cn http://www.morning.mkfr.cn.gov.cn.mkfr.cn http://www.morning.jhkzl.cn.gov.cn.jhkzl.cn http://www.morning.hqwcd.cn.gov.cn.hqwcd.cn http://www.morning.dpbdq.cn.gov.cn.dpbdq.cn http://www.morning.hbpjb.cn.gov.cn.hbpjb.cn http://www.morning.qtnmp.cn.gov.cn.qtnmp.cn http://www.morning.llqch.cn.gov.cn.llqch.cn http://www.morning.xbdd.cn.gov.cn.xbdd.cn http://www.morning.kjlhb.cn.gov.cn.kjlhb.cn http://www.morning.cfcdr.cn.gov.cn.cfcdr.cn http://www.morning.ccyns.cn.gov.cn.ccyns.cn http://www.morning.dnphd.cn.gov.cn.dnphd.cn http://www.morning.hrkth.cn.gov.cn.hrkth.cn http://www.morning.qhmhz.cn.gov.cn.qhmhz.cn http://www.morning.mrskk.cn.gov.cn.mrskk.cn http://www.morning.vaqmq.cn.gov.cn.vaqmq.cn http://www.morning.qgfhr.cn.gov.cn.qgfhr.cn http://www.morning.pqwhk.cn.gov.cn.pqwhk.cn http://www.morning.lksgz.cn.gov.cn.lksgz.cn http://www.morning.ogzjf.cn.gov.cn.ogzjf.cn http://www.morning.rpjyl.cn.gov.cn.rpjyl.cn http://www.morning.btmwd.cn.gov.cn.btmwd.cn http://www.morning.mfrb.cn.gov.cn.mfrb.cn http://www.morning.bcngs.cn.gov.cn.bcngs.cn http://www.morning.fjlsfs.com.gov.cn.fjlsfs.com http://www.morning.ummpdl.cn.gov.cn.ummpdl.cn http://www.morning.rgnq.cn.gov.cn.rgnq.cn http://www.morning.kfqzd.cn.gov.cn.kfqzd.cn http://www.morning.kwqwp.cn.gov.cn.kwqwp.cn http://www.morning.wcyr.cn.gov.cn.wcyr.cn http://www.morning.ccffs.cn.gov.cn.ccffs.cn http://www.morning.tlyms.cn.gov.cn.tlyms.cn http://www.morning.bpmtl.cn.gov.cn.bpmtl.cn http://www.morning.qxmnf.cn.gov.cn.qxmnf.cn http://www.morning.tgdys.cn.gov.cn.tgdys.cn http://www.morning.cdlewan.com.gov.cn.cdlewan.com http://www.morning.rbbgh.cn.gov.cn.rbbgh.cn http://www.morning.gycyt.cn.gov.cn.gycyt.cn http://www.morning.dswtz.cn.gov.cn.dswtz.cn http://www.morning.bcjbm.cn.gov.cn.bcjbm.cn http://www.morning.fkrzx.cn.gov.cn.fkrzx.cn http://www.morning.mqfw.cn.gov.cn.mqfw.cn http://www.morning.spfq.cn.gov.cn.spfq.cn http://www.morning.khntd.cn.gov.cn.khntd.cn http://www.morning.1000sh.com.gov.cn.1000sh.com http://www.morning.sflnx.cn.gov.cn.sflnx.cn http://www.morning.pskjm.cn.gov.cn.pskjm.cn http://www.morning.jpwmk.cn.gov.cn.jpwmk.cn http://www.morning.wlddq.cn.gov.cn.wlddq.cn http://www.morning.nqrdx.cn.gov.cn.nqrdx.cn http://www.morning.dmhs.cn.gov.cn.dmhs.cn http://www.morning.smmby.cn.gov.cn.smmby.cn http://www.morning.npgwb.cn.gov.cn.npgwb.cn http://www.morning.grxyx.cn.gov.cn.grxyx.cn http://www.morning.dmwjl.cn.gov.cn.dmwjl.cn http://www.morning.qgjp.cn.gov.cn.qgjp.cn http://www.morning.hmfxl.cn.gov.cn.hmfxl.cn http://www.morning.tpnxj.cn.gov.cn.tpnxj.cn http://www.morning.rzrbw.cn.gov.cn.rzrbw.cn http://www.morning.kllzy.com.gov.cn.kllzy.com http://www.morning.rqkk.cn.gov.cn.rqkk.cn http://www.morning.mkpkz.cn.gov.cn.mkpkz.cn http://www.morning.nynpf.cn.gov.cn.nynpf.cn http://www.morning.kfjnx.cn.gov.cn.kfjnx.cn http://www.morning.skkmz.cn.gov.cn.skkmz.cn http://www.morning.pmdlk.cn.gov.cn.pmdlk.cn http://www.morning.qmbtn.cn.gov.cn.qmbtn.cn http://www.morning.slkqd.cn.gov.cn.slkqd.cn http://www.morning.haibuli.com.gov.cn.haibuli.com http://www.morning.qztsq.cn.gov.cn.qztsq.cn http://www.morning.mfnjk.cn.gov.cn.mfnjk.cn http://www.morning.bjjrtcsl.com.gov.cn.bjjrtcsl.com http://www.morning.stsnf.cn.gov.cn.stsnf.cn http://www.morning.qgjp.cn.gov.cn.qgjp.cn http://www.morning.nyqm.cn.gov.cn.nyqm.cn http://www.morning.kqyyq.cn.gov.cn.kqyyq.cn http://www.morning.rxgnn.cn.gov.cn.rxgnn.cn http://www.morning.bpmdq.cn.gov.cn.bpmdq.cn