关于PHP的几个版本和线程安全的讨论

从PHP5.2.10版本开始(现在有PHP5.2.10和5.3两个版本),有None-Thread Safe与Thread Safe两种版本的可供选择,这两种版本有何不同,作为使用者来说又应该如何选择呢?下面聚友将为您讲述。

先从字面意思上理解,None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查;Thread Safe就是线程安全,执行时会进行线程(thread)安全检查,以防止有新要求就启动新线程的 CGI 执行方式耗尽系统资源。

一、如何选择PHP5.3的VC9版本和VC6版本

阅读更多

e-border客户端配置

1、就我目前测试的情况来看,几乎所有的网络应用程序都可以用e-Border来实现代理。包括:IE,Outlook Express,Media Player,RealPlayer,几乎所有的游戏程序,股票软件等等。目前已知的不能使用的软件有:MSN和Yahoo Messenger的视频音频聊天功能、VPN软件。
2、下面是安装和使用方法,假设代理服务器地址是192.168.0.1。
3、首先要 启动CCProxy设置里的DNS服务。客户端机器的TCP/IP协议里要设置DNS地址,DNS填192.168.0.1 。
4、下载e-Border安装程序( 可以去网上搜一下,很多的 )
5、在客户端运行e-Border安装程序,并运行安装包里的汉化程序。

阅读更多

NEC e-Border Client 汉化版

NEC e-Border Client 与 SocksCap32 一样是由 NEC USA, Inc. 开发的。它是被 NEC 称为“完整的 Socks 解决方案”的 e-Border 系统的客户端部分。它不仅能连接到专用的 e-Border 服务器,而且能够连接到普通 Socks5 代理服务器,提供强大的 Socks5 代理调度。除了能像 SocksCap32 那样对于特定的程序提供 Socks5 代理,也能截取你系统里的所有连接请求,将它们通过代理连接出去。更能设置多个 Socks5 代理服务器,提供更快更稳定的连接。所以,它除了能像 SocksCap32 那样为普通网络应用程序提供代理,更能代理诸如 DiabloII、

阅读更多

SVN服务端安装与客户端配置

# 下载地址见本文下方

一、安装服务器端和客户端
安装 Subversion(以下简称SVN)的服务器端和客户端。下载下来的服务器端是个 zip 压缩包,直接解压缩即可,比如我解压到 E:\subversion 。客户端安装文件是个 exe 可执行文件,直接运行按提示安装即可,客户端(TortoiseSVN)安装完成后提示重启。

二、建立版本库(Repository)

运行Subversion服务器需要首先要建立一个版本库(Repository)。版本库可以看作是服务器上集中存放和管理数据的地方。

开始建立版本库。首先建立 F:\svn 空文件夹作为所有版本库的根目录。然后,进入命令行并切换到subversion的bin目录。输入如下命令:

svnadmin create f:\svn\repos1

阅读更多

ControlJS简单应用介绍

Steve Souders 最近做了这么一个东西—— ControllJs。 主要为了是解决网页加载中Js文件的性能问题。这里做一个简单的转述。

众所周知,资源文件在浏览器加载直至用户可用是有两个阶段的:加载,执行。JavaScript的加载会阻滞其他资源的加载,而由于浏览器渲染是单线程的,JS执行的同时浏览器实际是假死状态的,页面渲染会停止,浏览器也不会下载新的文件。这样也会造成很大的性能问题, 所以Steve提出了三个方法:异步加载;延迟执行;覆写document.write。

1. 异步加载

核心思想还是很简单:让页面中的js片段对浏览器不可识别。jquery的template也是用了类似的方法。

外链脚本:由

<script type="text/javascript" src="main.js"><script> 

阅读更多

addslashes,mysql_real_escape_string

可能还是有些PHP开发人员使用addslashes进行防止SQL注入,在这里还是建议加强中文防止SQL注入的检查,addslashes的问题在于黑客可以用0xbf27来代替单引号,而addslashes只是将0xbf27修改为0xbf5c27,成为一个有效的多字节字符,其中的0xbf5c仍会被看作是单引号,所以addslashes无法成功拦截。

当然addslashes也不是毫无用处,它是用于单字节字符串的处理,多字节字符还是用mysql_real_escape_string吧。

对于php手册中get_magic_quotes_gpc的举例:

阅读更多

PHP Uploadify文档整理

文章有点长,没办法,要介绍的太多了。

Uploadify文档整理

直入正题
==============================
DEMO:http://help.mudbest.com/jquery/jquery-uploadify/
下载地址:jqeury-uploadify

部署
在部署一个Uploadify实例之前,必须确保满足最小需求:

jQuery 1.4.x or greater
swfObject 2.2 or greater
Flash Player 9.0.24 or greater

文件包里包含以下文件,路径随意,在引入相关文件的时候不要错了就行:

阅读更多

JQuery的Alert插件

使用它可以用来替换JScript中的alert,confirm,prompt

<!-- Dependencies -->
<script src="jquery.js" type="text/javascript"></script>
<script src="jquery.ui.draggable.js" type="text/javascript"></script>
<!-- Core files -->
<script src="jquery.alerts.js" type="text/javascript"></script>
<link href="jquery.alerts.css" rel="stylesheet" type="text/css" />

注意其中jquery.ui.draggable.js是用来实现拖拉的,如不需要这个功能不就不用引用。在目前最近的Jquery1.42下应用引用:

阅读更多

Google TOTP Two-factor Authentication(两次验证密码) for PHP

谷歌在今年年初公布的2因子认证(2FA)的G-邮件提供了一个为Android,iPhone和黑莓的应用程序名为Google的Authenticator生成一个时间登录令牌。 这篇文章将展示如何实现谷歌2FA Web应用程序,以防止被盗的凭据。

谷歌验证器是基于RFC 4226 -基于时间的一次性密码(TOTP)这是使用16位基32( RFC 4648 )编码的种子值初始化。 TOTP使用的初始种子可以进入谷歌通过使用QR码相机或通过键盘的Authenticator。 谷歌还提供了一个PAM模块,允许用户集成的sshd 2FA。

可以写一个模块,以支持在任何语言的Google TOTP – 写PHP库唯一需要注意的是缺乏一个RFC 4648兼容的基地32解码功能。 32基本功能是需要解码的初始种子。 这可能是最棘手的部分实施谷歌的2FA。 可以使用以下功能:

阅读更多