一切福田,不離方寸,從心而覓,感無不通。

Category Archives: Programming Language

解决FastCGI 进程超过了配置的活动超时时限的问题

近日,需要满足测试需求,进行大数据并发测试时,报出【HTTP 错误 500.0 – Internal Server Error E:\PHP\php-cgi.exe – FastCGI 进程超过了配置的活动超时时限】 解决办法: IIS7->FastCGI设置->双击"php-cgi.exe"->"活动超时" 项默认是设置为70(秒),改为600(10分钟,此处根据需求设置可以略高~) 注意这个是全局那边设置的不是针对单个网站设置 打开IIS7.5, 点击 "FastCGI设置", 双击之前配置IIS支持PHP设置的php-cgi.exe, "活动超时" 项设置的长一些,默认是30,这里的单位是秒,可以设置为1200(即:20分钟) 针对iis 7.5 网站站点设置的方式: 在网站的高级设置里面,单击连接限制,默认为120秒,这里面更改的是每个站点的   from:http://www.jb51.net/article/39436.htm

龙生   24 Nov 2017
View Details

C# DateTime与时间戳转换

C# DateTime与时间戳的相互转换,包括JavaScript时间戳和Unix的时间戳。 1. 什么是时间戳 首先要清楚JavaScript与Unix的时间戳的区别: JavaScript时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数。 Unix时间戳:是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。 可以看出JavaScript时间戳总毫秒数,Unix时间戳是总秒数。 比如同样是的 2016/11/03 12:30:00 ,转换为JavaScript时间戳为 1478147400000;转换为Unix时间戳为 1478147400。   2. JavaScript时间戳相互转换 2.1 C# DateTime转换为JavaScript时间戳 1 2 3 System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区 long timeStamp = (long)(DateTime.Now – startTime).TotalMilliseconds; // 相差毫秒数 System.Console.WriteLine(timeStamp);   2.2 JavaScript时间戳转换为C# DateTime 1 2 3 4 long jsTimeStamp = 1478169023479; System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区 DateTime dt = startTime.AddMilliseconds(jsTimeStamp); System.Console.WriteLine(dt.ToString("yyyy/MM/dd HH:mm:ss:ffff"));   3. Unix时间戳相互转换 3.1 C# DateTime转换为Unix时间戳 1 2 3 System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区 long timeStamp = (long)(DateTime.Now – startTime).TotalSeconds; // 相差秒数 System.Console.WriteLine(timeStamp);   3.2 Unix时间戳转换为C# DateTime 1 2 3 4 longunixTimeStamp = […]

龙生   23 Nov 2017
View Details

wordpress Mail sitename字段处理不当导致多处远程代码执行漏洞修复方法

wordpress Mail sitename字段处理不当导致多处远程代码执行漏洞修复方法,废话不多说,直接上截图 文件路径:wp-includes/class-phpmailer.php ,修复方法如上截图蓝色选中部分,代码如下: if (is_null($patternselect)) { $patternselect = self::$validator; } if (is_callable($patternselect)) { return call_user_func($patternselect, $address); } 把以上代码复制粘贴到对应的位置就可以了,可能因版本不同,粘贴的行数也不同,但应该都可以找到这个位置。 希望每一个关注王通seo的人看到这个都能够把这些漏洞修复方法转载到自己的空间去,让更多的人轻松修复自己的网站程序漏洞。   from:http://www.seo.net.cn/faq/2552.html

龙生   15 Nov 2017
View Details

她是IT界传奇人士,十年前因网络恐吓淡出公众视线,而今以书传递产品与成长心得

编者按 / 英子 (题图中的照片摄于十年前,来自Flickr)不夸张地说,Kathy Sierra 算是 IT 界传奇人士,她是那种极为罕见的可以在开发、产品、设计之间做到无缝衔接的人。你可能没听说过她,然而她身兼数职,每一个职位都够份量—— 知名IT出版商 O’Reilly 超级畅销技术书 Head First 系列策划人 第一本 Head First 系列图书 Head First Java 作者 大型 Java 开发者社区 JavaRanch.com 创办人 几款游戏主创 加州大学洛杉矶分校新媒体与交互设计课程创办人 …… 另外一个让人比较震惊和遗憾的信息是,Kathy Sierra 是网络暴力受害者。作为知名的创作者、技术人士,2007年之前,她在传播编程技术方面非常活跃。2007年3月,在参加 O’Reilly ETech 会议演讲之前,她的博客和邮件收到了匿名者的死亡威胁,之后她停止了所有公开活动,至今也极少公开露面。目前网上关于她个人的信息大都是2007年之前的,前几年她开了Twitter,但又关了… 距离 Kathy Sierra 淡出公众视线已是十年之久,IT领域可谓日新月异。我们无法猜想,如果十年来她一直活跃在技术一线如今是怎样的光景?目前,她仍然写书,热衷养马…..只是,我们觉得跟 Kathy 的距离很远…… 感谢 Badass: Making Users Awesome 中文版《用户思维+:好产品让用户为自己尖叫》一书即将出版上架,因为这个契机,我们得以跟 Kathy 直接对话 ;感谢图灵访谈负责人六米费劲周折联系到 Kathy ,这篇访谈弥足珍贵。 结尾为大家送出10本《用户思维+:好产品让用户为自己尖叫》。 Kathy Sierra  O’Reilly出版社 Head First 系列图书策划人之一,大型Java开发者社区 JavaRanch.com 创办人,多款教育类和娱乐类游戏主要开发人员。加州大学洛杉矶分校新媒体与交互设计课程创始人。她深谙产品交互之道和认知科学理论,多年来,一直帮助大公司、创业公司、非营利组织和教育者重新思考打造用户体验的方法,培养持续忠诚的用户。 O’Reilly Head First 系列图书策划人 Head First 是 O’Reilly Media 推出的一套入门指导型图书系列,由 Kathy Sierra 和 Bert Bates 策划创办。最初,该系列只涵盖编程和软件工程。由于该系列图书的成功,目前已经扩展至其他的主题,像科学、数学和商业等领域。Head First 系列强调图书的“非正统性”,强化读者的视觉感受和读者的参与度。图书增添了很多互动性强的谜题、笑话,摒弃“标准”的设计和布局,推崇会话式的写作风格,让读者可以参与到给定的话题当中。 目前,图灵翻译出版了《嗨翻C语言》《Head First JavaScript 程序设计》。 优秀的技术图书作者 最为知名的作品包括: Head First Java,Head First 系列第一本图书,2005年出版第1版,迄今仍是Java入门书的翘楚。 Badass: Making Users […]

龙生   14 Nov 2017
View Details

C#取整函数Math.Round、Math.Ceiling和Math.Floor

1.Math.Round:四舍六入五取偶

说明:对于1.5,因要返回偶数,所以结果为2。     2.Math.Ceiling:只要有小数都加1

说明:例如在分页算法中计算分页数很有用。   3.Math.Floor:总是舍去小数

from:https://www.cnblogs.com/rwh871212/p/6962099.html

龙生   09 Nov 2017
View Details

StringComparison枚举

public enum StringComparison { CurrentCulture, CurrentCultureIgnoreCase, InvariantCulture, InvariantCultureIgnoreCase, Ordinal, OrdinalIgnoreCase } CurrentCulture 使用区域敏感排序规则和当前区域比较字符串。 CurrentCultureIgnoreCase 使用区域敏感排序规则、当前区域来比较字符串,同时忽略被比较字符串的大小写。 InvariantCulture 使用区域敏感排序规则和固定区域比较字符串。 InvariantCultureIgnoreCase 使用区域敏感排序规则、固定区域来比较字符串,同时忽略被比较字符串的大小写。 Ordinal 使用序号排序规则比较字符串。 OrdinalIgnoreCase 使用序号排序规则并忽略被比较字符串的大小写,对字符串进行比较。   1.首先是StringComparison.Ordinal 在进行调用String.Compare(string1,string2,StringComparison.Ordinal)的时候是进行非语言(non-linguistic)上的比较,API运行时将会对两个字符串进行byte级别的比较,因此这种比较是比较严格和准确的,并且在性能上也很好,一般通过StringComparison.Ordinal来进行比较比使用String.Compare(string1,string2)来比较要快10倍左右.(可以写一个简单的小程序验证,这个挺让我惊讶,因为平时使用String.Compare从来就没想过那么多).StringComparison.OrdinalIgnoreCase就是忽略大小写的比较,同样是byte级别的比较.性能稍弱于StringComparison.Ordinal. 2.StringComparison.CurrentCulture 是在当前的区域信息下进行比较,这是String.Compare在没有指定StringComparison的时候默认的比较方式.例子如下:  Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US"); //当前的区域信息是美国             string s1 = "visualstudio";             string s2 = "windows";             Console.WriteLine(String.Compare(s1, s2,StringComparison.CurrentCulture)); //输出"-1"             Thread.CurrentThread.CurrentCulture = new CultureInfo("sv-SE"); //当前的区域信息是瑞典             Console.WriteLine(String.Compare(s1, s2,StringComparison.CurrentCulture)); //输出"1" StringComarison.CurrentCultureIgnoreCase指在当前区域信息下忽略大小写的比较. 3.StringComarison.InvariantCulture 使用StringComarison.InvariantCulture来进行字符串比较,在任何系统中(不同的culture)比较都将得到相同的结果,他是使用CultureInfo.InvariantCulture的静态成员CompareInfo来进行比较操作的.例子如下:             Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US"); //当前的区域信息是美国             string s1 = "visualstudio";             string s2 = "windows";             Console.WriteLine(String.Compare(s1, s2,StringComparison.InvariantCulture)); //输出"-1"             Thread.CurrentThread.CurrentCulture = new CultureInfo("sv-SE"); //当前的区域信息是瑞典             Console.WriteLine(String.Compare(s1, s2,StringComparison.InvariantCulture)); //输出"-1" 参考文章:http://msdn.microsoft.com/netframework/default.aspx?pull=/library/en-us/dndotnet/html/StringsinNET20.asp   from:http://www.cnblogs.com/zhw511006/archive/2010/07/09/1774591.html

龙生   08 Nov 2017
View Details

解决WordPress后台插件更新模块任意目录遍历导致DOS漏洞的修复方案

一直在使用阿里云云服务器,当然小七博客没有放在阿里云上面,邮箱以及后台总或者经常收到短信提示“WordPress后台插件更新模块任意目录遍历导致DOS的漏洞”,可惜阿里云没有给出解决方案,需要修改可以购买提供的安骑士专业版进行修复。如果你使用其他程序,一会会收到你正在使用程序的漏洞等等,这个亲自实验了一下。 目前wordpress最新的4.6.1系列已经修复了这个漏洞,所以解决方案直接升级到最新版本就行。可是有一些用户的主题在升级到最新版可能出现兼容性问题,所以暂时不会升级,而且后台升级也是非常慢的或者根本就无法升级,嘿嘿。下面说说4.5.4以及以下版本的修复方案,在进行更改代码的时候,建议备份一份,防止修改出错能够马上恢复,最好把整站数据打包备份吧。 WordPress 4.5.4版本 我们只需要将打开WordPress后台文件/wp-admin/includes/ajax-actions.php,搜索以下代码: $plugin = urldecode( $_POST[‘plugin’] ); 然后在这段代码后面添加以下代码即可: $plugin = plugin_basename( sanitize_text_field( wp_unslash( $_POST[‘plugin’] ) ) ); 至此,修改保存上传覆盖后即可成功修复WordPress 4.5.4版本的WordPress后台插件更新模块任意目录遍历导致DOS漏洞。 WordPress 4.5.4版本以下 如果您使用的4.5.4以下的版本,那么可能还需要修改以下两个地方:(PS:如果某版本的以下2点中的代码已经跟修复后一样的就不用修改了): 1、在/wp-admin/includes/ajax-actions.php文件中搜索找以下代码: if ( $plugin_update_data === true ) {     wp_send_json_error( $status ); } 直接修改为: if ( $plugin_update_data === true ) { $status[‘error’] = __( ‘Plugin update failed.’ ); wp_send_json_error( $status ); } 2、在/wp-admin/includes/ajax-actions.php文件中搜索找以下代码: if ( is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->get_error_code() ) {   $status[‘error’] = $wp_filesystem->errors->get_error_message();     } wp_send_json_error( $status );  } } 直接修改为: if ( is_wp_error( $wp_filesystem->errors ) && $wp_filesystem->errors->get_error_code() ) {      $status[‘error’] = $wp_filesystem->errors->get_error_message();    } wp_send_json_error( $status ); } else { // An unhandled error occured $status[‘error’] = __( ‘Plugin update failed.’ ); wp_send_json_error( $status ); } } 修改保存上传覆盖后即可成功修复WordPress 4.5.4版本以下的WordPress后台插件更新模块任意目录遍历导致DOS漏洞。 当然你也可以忽略,不然阿里云会天天提醒您的,嘿嘿!简单的操作下来也就耽误几分钟的时间。在修复好之后,不要忘了去阿里云后台验证一下哦,不然提醒还在的哦! 其实从另一方面也说明了阿里云在于安全方面的提醒还是不错的,虽说是为了推广他家的安骑士专业版,但是也说明确实有问题呢,嘿嘿。   from:https://www.xqblog.com/7091.html

龙生   07 Nov 2017
View Details

关于MultipleActiveResultSets属性导致的There is already an open DataReader associated with this Command which must be closed first的解决方法

执行SqlDataReader.Read之后,如果还想用另一个SqlCommand执行Insert或者Update操作的话,会得到一个错误提示:There is already an open DataReader associated with this Command which must be closed first.,然后一般就会产生数据保存失败的异常。   解决方法是在ConnectionString中加上一个参数“MultipleActiveResultSets”, 将其值设置为true。

  MultipleActiveResultSets属性详解 ADO.NET 1.x 利用SqlDataReader读取数据,针对每个结果集需要一个独立的连接。当然,你还必须管理这些连接并且要付出相应的内存和潜在的应用程序中的高度拥挤的瓶颈代价-特别是在数据集中的Web应用程序中。 ADO.NET 2.的一个新特征多数据结果集(Multiple Active Result Sets,简称MARS)-它允许在单个连接上执行多重的数据库查询或存储过程。这样的结果是,你能够在单个连接上得到和管理多个、仅向前引用的、只读的结果集。目前实现这个功能的数据库只有Sql Server 2005。所以当我们针对Sql Sever 2005的时候,需要重新审视DataReader对象的使用。使用SqlServer 2005,可以在一个Command对象上同时打开多个DataReader,节约数据库联接所耗费的服务器资源,在实际开发中普遍存在的一种典型的从数据库中读写数据的情形是,你可以使用多重连接而现在只用一个连接就足够了。例如,如果你有一些来自于几个表中的数据-它们不能被联结到一个查询中,那么你就会有多重的连接-每个连接都有一个与之相关连的命令用于读取数据。同样,如果你正在向一个表写数据,那么你需要另外一个连接或连接集合-如果有多个表要被更新的话。 例如下面的代码  

  近期的一个项目是关于不同数据库同步的操作,考虑到数据的及时性,应用程序的性能,在数据库链接字符串中加入MultipleActiveResultSets; MultipleActiveResultSets的作用是指定多活动的结果集是否与指定的链接相互关联;类型是bool类型;true代表与指定的链接关联;false代表与指定的链接不关联;默认是false;   from:http://www.cnblogs.com/sdusrz/p/4433108.html

龙生   30 Oct 2017
View Details

DAO

DAO(Data Access Object)是一个数据访问接口,数据访问:顾名思义就是与数据库打交道。夹在业务逻辑与数据库资源中间。 在核心J2EE模式中是这样介绍DAO模式的:为了建立一个健壮的J2EE应用,应该将所有对数据源的访问操作抽象封装在一个公共API中。用程序设计的语言来说,就是建立一个接口,接口中定义了此应用程序中将会用到的所有事务方法。在这个应用程序中,当需要和数据源进行交互的时候则使用这个接口,并且编写一个单独的类来实现这个接口在逻辑上对应这个特定的数据存储。

龙生   23 Oct 2017
View Details

POJO

POJO(Plain Ordinary Java Object)简单的Java对象,实际就是普通JavaBeans,是为了避免和EJB混淆所创造的简称。 使用POJO名称是为了避免和EJB混淆起来, 而且简称比较直接. 其中有一些属性及其getter setter方法的类,没有业务逻辑,有时可以作为VO(value -object)或dto(Data Transform Object)来使用.当然,如果你有一个简单的运算属性也是可以的,但不允许有业务方法,也不能携带有connection之类的方法。

龙生   23 Oct 2017
View Details
1 99 100 101 175