未来往事
URL数字随机重组校验,URL地址id随机加密生成及逆向校验
PHP版本:

jquery版本:
+阅读全文

jquery web流程图拖拽构建 晴

Rinald 本站原创 WEB前端 2016/12/09 01:10
js/jquery实现流程拖拽,js/jquery实现web流程设计器,js/jquery动态流程图构建

实现意义:
管理员可以随时根据企业的运营发展情况便捷动态调整企业的组织架构(审批)流程、可视化流程建模,通过流程设计器,快速通过“拖、拉、拽”实现流程定义建模,通过流程监控实时分析流程实例的运行数据分析,提供企业流程的不断优化的依据,同时智能流程版本管理功能,当流程变化较大时旧的实例按旧的流程定义运转,新启动的流程按新版本的流程运转,新旧隔离互不影响。从而降低系统维护人力投入及维护时间。

正文:
JQuery UI的拖拽功能:
JQuery UI是JQuery官方支持的WebUI 代码库,包含底层交互、动画、特效等API,并且封装了一些Web小部件(Widget)。同时,JQuery UI继承了jquery的插件支持,有大量的第三方插件可以丰富JQuery UI的功能。
JQuery UI提供的API极大简化了拖拽功能的开发。只需要分别在拖拽源(source)和目标(target)上调用draggable和droppable两个函数即可。
拖拽原理:
首先要明确几个概念。
  ource:拖拽源,要拖动的元素。
  taerget:拖放目标,能够放入source的容器。
拖拽的动作分解如下:
  1. drag start:在拖拽源(source)上按下鼠标并开始移动
  2. drag move: 移动过程中
  3. drag enter:  移动进入目标(target)容器
  4. drag leave: 移出目标(target)容器
  5. drop: 在目标(target)容器上释放鼠标
  6. drag end: 结束
在html5之前,页面元素不直接支持拖拽事件。所以都是通过监听鼠标事件并记录拖拽状态的方式来实现拖拽功能。如:
点击在新窗口中浏览此图片

jsPlumb的流程拖拽功能:
jsPlumb是一个强大的JavaScript连线库,它可以将html中的元素用箭头、曲线、直线等连接起来,适用于开发Web上的图表、建模工具等。它同时支持jQuery+jQuery UI、MooTools和YUI3这三个JavaScript框架,十分强大,大家可以在官网的Demo中看看它的功能。如:
点击在新窗口中浏览此图片
官网Demo:https://jsplumbtoolkit.com/demos.html
官网文档(API文档):https://jsplumbtoolkit.com/docs.html

【参考文献】
WEB流程设计器
JQuery UI的拖拽功能
JQuery UI进行拖拽工作流流程设置
jsPlumb开发入门教程
dagstudio
linux TIME-WAIT相关参数:
net.ipv4.tcp_tw_reuse = 0    表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭
net.ipv4.tcp_tw_recycle = 0  表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭
net.ipv4.tcp_syncookies = 0   表示关闭SYN Cookies。
PS:/sbin/sysctl -a可以查看Linux各项内核参数

修改TIME-WAIT相关参数配置:
#vi /etc/sysctl.conf
net.ipv4.tcp_syncookies = 1 表示开启SYN Cookies。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭;
net.ipv4.tcp_tw_reuse = 1 表示开启重用。允许将TIME-WAIT sockets重新用于新的TCP连接,默认为0,表示关闭;
net.ipv4.tcp_tw_recycle = 1 表示开启TCP连接中TIME-WAIT sockets的快速回收,默认为0,表示关闭。

让配置修改即刻生效
#/sbin/sysctl -p
注意:
1. tw_reuse,tw_recycle 必须在客户端和服务端timestamps 开启时才管用(默认打开)
2. tw_reuse 只对客户端起作用,开启后客户端在1s内回收
3. tw_recycle 对客户端和服务器同时起作用,开启后在 3.5*RTO 内回收,RTO 200ms~ 120s 具体时间视网络状况。内网状况比tw_reuse 稍快,公网尤其移动网络大多要比tw_reuse 慢,优点就是能够回收服务端的TIME_WAIT数量


查看服务器的TCP连接状态:
#netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}'
(或#netstat -ntu|awk -F '[ :]+' '/^tcp/{arr[$8]++}END{for(key in arr){print arr[key],key}}'|sort -rn -k1)
TIME_WAIT 71
CLOSE_WAIT 1
FIN_WAIT1 3
FIN_WAIT2 12
ESTABLISHED 186
PS:处于TIME_WAIT状态的sockets从原来的600多减少到70左右。处于SYN_RECV等待处理状态的sockets为0。

合理的优化linux系统内核参数可以提高服务器的并发 负载处理能力、可用率。如本文的优化可以有效降低因TIME_WAIT连接引起的网络故障。

php分卷备份恢复mysql数据库 不指定

Rinald 本站原创 PHP 2016/08/24 18:25
本文主要阐述在大数据量下通过php程序分卷备份恢复mysql数据库的方法,代码已合并为一个文件,即为php页面版MySQL大数据库分卷备份恢复工具。由于时间关系,代码未做整理,结构相对混乱,如果你在该结构基础上做了整理也欢迎你反馈给我~~~

工具实现功能:
1.支持MySQL数据库按指定大小分卷备份和恢复;
2.支持单文件备份及下载
3.分卷备份存储在服务器端,可以直接上传导入

操作过程截图:
输入mysql链接配置信息
点击在新窗口中浏览此图片
当前权限链接下的数据库表信息
点击在新窗口中浏览此图片
选择导出备份方式
点击在新窗口中浏览此图片
导出备份选项
+阅读全文
php获取当前自然周,php获取当前为第几周,php获取自然周开始结束日期时间,php date()函数

示例:
echo getTotalWeek(); //输出当前年份全年共有多少自然周
echo getWeekNum(); //输出当前为本年的第几周
echo getWeekNum('2016-7-31');  //输出2016年7月31日为本年的第几周
print_r(getWeekDate(2016,32)); //输出2016年第32周的起止日期

PHP根据年份获取全年共多少自然周、PHP获取一年共有多少自然周(考虑闰年)

PHP根据日期时间获取为当前的第几周、PHP获取当前是一年的第几周

PHP根据日期时间及第几周获取开始日期和结束日期、PHP获取自然周的开始日期和结束日期
+阅读全文

PHP网站安全性浅谈 不指定

Rinald 本站原创 PHP 2016/05/31 17:52
PHP网站安全性浅谈
一、web应用服务安全性设置
1、服务器各应用服务尽可能以独立用户运行,如:
 WEB服务运行帐户为www
 MySQL服务运行帐户为mysql
 Memcached用户为memcache
 Redis运行帐户为redis

2、应用服务目录的读写权限最小颗粒化
(a)缓存目录:
一般需要755/777权限,但是多数情况下缓存目录无须提供给用户访问,可以通过nginx拒绝。如:
location ~ "^/cache" {
  return 403;
}
(b)附件目录:
一般也需要755/777等写入权限,建议附件和程序分离,附件不做PHP配置解析(这点能做到最好)。
如果上面做不到,那么建议你尽可能不去解析附件目录的PHP。如:
location ~* ^/upload/.*.(php|php5)($|/){
    deny all;
}

location ~* .*\.php($|/){
      if ($request_filename ~* (.*)\.php) {
            set $php_url $1;
      }
      if (!-e $php_url.php) {
            return 403;
      }

      fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;
}
PS:
+阅读全文
php图片缩放类,php不失真图片缩放类,php高质量缩略图,php缩略图函数,php无损缩放,php图片缩放后模糊解决,图片缩略图质量低解决方法。在PHP网站开发过程中,如果你建立的网站涉及大量的图片处理,必然涉及到图片上传、缩放,而如何保持图片不失真,是很多初级PHP网站开发者比较头疼的一件事,今天未来往事<http://fity.cn>就和大家分享一下如何进行等比例不失真图片缩放。

首先我们来了解几个php函数:
imagepng()http://cn2.php.net/manual/en/function.imagepng.php
注:函数的第三个参数的数值区间控制图片的质量,与imagejpeg()函数不同,imagepng()函数的区间值是0-9 (0表示质量最高,9表示质量最低)。PHP 5.1.2+支持。
imagegif()http://cn2.php.net/manual/en/function.imagegif.php
imagejpeg()http://cn2.php.net/manual/en/function.imagejpeg.php
注:函数的第三个参数控制图片的质量,区间0-100 (0表示质量最低,100表示质量最高. 默认75)

附类代码:
+阅读全文

ueditor1.4上传图片水印 不指定

Rinald 本站原创 PHP 2016/05/11 16:13
ueditor上传图片加水印,ueditor1.4.3 水印,ueditor1.4.3 图片水印,ueditor 1.4.3上传图片添加水印,ueditor图片水印控制

打开UEditor压缩包下php目录中的上传类文件:Uploader.class.php
在上传文件的主要方法下添加调用水印处理方法:

水印处理方法/函数:
+阅读全文
Discuz7.0/Discuz7.2到Discuz X2.0/Discuz X3.0/Discuz X3.2 的升级/转换

Step 1、先升级您的UCenter1.5.x版本到1.6.x版本
UCenter1.6.0程序升级包下载地址:
http://download.comsenz.com/UCenter/1.6.0/UCenter_1.6.0_SC_GBK.zip

官方升级文档:
http://www.discuz.net/thread-2141455-1-1.html

Step 2、升级discuz7.0/7.2到discuz X2.0版本
discuz X2.0程序升级包下载地址:
http://www.discuz.net/thread-2168918-1-1.html

官方升级文档:
http://www.discuz.net/thread-2174726-1-1.html

注意事项:
1、需要先安装X2.0,安装时UCenter填写刚刚升级后的URL即可,安装好X2.0后再做升级转换
2、convert转换程序说明:
 (1)如果是升级转换7.0到X2.0,请下载本转换程序([官方升级文档]2楼的附件):
下载文件 (已下载 191 次)

 运行后界面如图:

点击在新窗口中浏览此图片

 (2)如果是升级转换7.2到X2.0,请直接上传您刚刚下载后的discuz!X2.0根目录下utility下的convert转换程序

点击在新窗口中浏览此图片

3、如果您安装了UCenter Home请在升级转换discuz程序完毕后进行UCenter Home升级

补充一些说明:
+阅读全文

Nginx upstream模块 不指定

Rinald 本站原创 Apache/Nginx 2015/11/18 11:32
Nginx upstream模块使用及介绍:
Nginx upstream模块主要提供数据转发功能,为nginx提供了跨越单机的横向处理能力,使nginx摆脱只能为终端节点提供单一功能的限制,而使它具备了网路应用级别的拆分、封装和整合的战略功能。在云模型大行其道的今天,数据转发使nginx有能力构建一个网络应用的关键组件。当然,一个网络应用的关键组件往往一开始都会考虑通过高级开发语言编写,因为开发比较方便,但系统到达一定规模,需要更重视性能的时候,这些高级语言为了达成目标所做的结构化修改所付出的代价会使nginx的upstream模块就呈现出极大的吸引力,因为他天生就快。作为附带,nginx的配置提供的层次化和松耦合使得系统的扩展性也可能达到比较高的程度。如果你对Nginx反向代理感兴趣,可以查看本博客另外一篇文章《Nginx反向代理安装配置》。

言归正传,下面介绍upstream的用法:

Nginx upstream的分配方式:
1、后端服务器
通过 upstream 可以设定后端服务器,指定的方式可以是 IP 地址与端口、域名、UNIX 套接字(socket)。其中如果域名可以被解析为多个地址,则这些地址都作为 backend。例如:
upstream realserver {
    server a.fity.cn;
    server b.fity.cn:8001;
}

2、负载均衡策略:
Nginx 提供轮询(round robin)、用户 IP 哈希(client IP)和指定权重 3 种方式。
A、轮询(round robin 默认)
每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。

B、weight(指定权重)
指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。
例如:
upstream pollll{
 server 192.168.2.200 weight=10;
 server 192.168.2.210 weight=10;
}

C、ip_hash(用户ip哈希 client IP)
每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。
再介绍一个和 ip_hash 配合使用的关键字:down。当某个一个 server 暂时性的宕机(down)时,你可以使用“down”来标示出来,并且这样被标示的 server 就不会接受请求去处理。要注意的是 weight 与 ip_hash 是不能同时使用的,原因很简单,他们是不同且彼此冲突的策略。
例如:
upstream pollserver{
 ip_hash;
 server 192.168.2.200:8001;
 server 192.168.2.210:8002;
 server proxy.fity.cn:8005 down;
}

3、重试策略:
+阅读全文
第1页 / 共6页 第一页 1 2 3 4 5 6 下一页 » 最后页 [ 显示模式: 摘要 | 列表 ]