摘要: 服务器提供一个文件下载,一般使用一个url指向服务器中的文件即可提供下载。但这样就不能进行统计,权限检测等操作。因此,一般使用php提供下载,代码如下:处理中文文件名:使用php readfile,需要经过php这层,如果可以直接通过apache将文件发送给用户,不经过php这层,将会提高下载速度。使用apache mod_xsendfile,下载地址:mod_xsendfile,让apache直接将文件发给用户安装:sudo apxs2 -cia mod_xsendfile.csudo a2enmod xsendfilesudo /etc/init.d/apache2 restartapxs 阅读全文
posted @ 2013-10-22 00:56 傲雪星枫 阅读(314) 评论(0) 推荐(0) 编辑
摘要: XSS跨站测试代码大全'>='>%3Cscript%3Ealert('XSS')%3C/script%3E%0a%0a.jsp%22%3cscript%3ealert(%22xss%22)%3c/script%3e%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd%2E%2E/%2E%2E/%2E%2E/%2E%2E/%2E%2E/windows/win.ini%3c/a%3e%3cscript%3ealert(%22xss%22)%3c/script%3e%3c/title%3e% 阅读全文
posted @ 2013-10-19 02:03 傲雪星枫 阅读(135) 评论(0) 推荐(0) 编辑
摘要: 1.配置缓存文件 cache manifestMIME TYPE:text/cache-manifest文件名称:name.appcache作用:用于配置需要缓存的文件2.使用方法在服务器上添加MIME TYPE在apache virtual host 中添加AddType text/cache-manifest .appcache创建 name.manifest,文件后缀可自定义,定义后需要在服务器上添加对应的MIME TYPECACHE MANIFEST#VERSION 1.0CACHE:index.html./js/jquery.js./css/style.cssNETWORK:./up 阅读全文
posted @ 2013-10-15 00:16 傲雪星枫 阅读(320) 评论(0) 推荐(0) 编辑
摘要: HTTP 204(no content)表示响应执行成功,但没有数据返回,浏览器不用刷新,不用导向新页面。HTTP 205(reset content) 表示响应执行成功,重置页面(Form表单),方便用户下次输入。使用ajax时,当只需要知道响应成功或失败的情况,则可以使用状态码HTTP 204来代替HTTP 200,减少多余的数据传输。例子:ajax提交用户名、文章id,记录用户访问过该文章 $(document).ready(function(){ $.get("api.php", {name:'fdipzone',article_id:'10 阅读全文
posted @ 2013-10-05 23:51 傲雪星枫 阅读(827) 评论(0) 推荐(0) 编辑
摘要: PHP HTTP请求类,支持GET,POST,Multipart/form-dataHttpRequest.class.php_ip = isset($config['ip'])? $config['ip'] : ''; $this->_host = isset($config['host'])? $config['host'] : ''; $this->_url = isset($config['url'])? $config['url'] : ' 阅读全文
posted @ 2013-09-30 01:26 傲雪星枫 阅读(867) 评论(0) 推荐(0) 编辑
摘要: php 过滤html标记属性类HtmlAttributeFilter.class.phparray('href','class'),'span'=>array('class')) private $_ignore = array(); // 忽略过滤的标记 例如:array('span','img') /** 处理HTML,过滤不保留的属性 * @param String $str 源字符串 * @return String */ public function strip($str){ $t 阅读全文
posted @ 2013-09-23 00:59 傲雪星枫 阅读(396) 评论(0) 推荐(0) 编辑
摘要: php 利用 fsockopen GET/POST 提交表单及上传文件1.GETget.php 'fdipzone', 'gender' => 'man');$url = $url.'?'.http_build_query($param);// create connect$fp = fsockopen($host, $port, $errno, $errstr, $timeout);if(!$fp){ return false;}// send request$out = "GET ${url} HTTP/1.1 阅读全文
posted @ 2013-09-15 18:55 傲雪星枫 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 原理:利用 ob_flush() 与 flush() 将缓冲区的内容提前输出,浏览器可提早加载这部分的内容,无需等待所有输出完成再加载。将页面内容划分为一个个小块,输出一个后再输出下一个,使用户可尽早看到页面内容,优化用户体验。首先 head 的内容应该优先加载,尽早加载css,javascript等静态内容,因此在head之后应该用 flush()输出。例子:先输出head 静态内容,再将每个分为一个chunk,每隔一秒输出。 Big Pipe 需要注意的问题:1.尽量利用一次输出输出尽可能多的内容。2.尽量可以同步加载。3.chunk不是分... 阅读全文
posted @ 2013-09-15 12:33 傲雪星枫 阅读(284) 评论(0) 推荐(0) 编辑
摘要: PHP获取远程主机文件内容方法很多,例如:file_get_contents,fopen 等。但如果同一域名对应了不同IP,例如 demo.fdipzone.com 对应3个IP192.168.100.101, 192.168.100.102, 192.168.100.103。则不能使用file_get_contents获取 192.168.100.101的内容,因为会根据负载均衡原则分配到不同主机,因此并不能确定每次都是访问192.168.100.101这台主机。如本地设置IP指定HOST的方法,但如果同一个程序中,需要先访问192.168.100.101,然后再访问192.168.100. 阅读全文
posted @ 2013-09-08 13:03 傲雪星枫 阅读(1264) 评论(0) 推荐(0) 编辑
摘要: Apache SSI(Server Side Include),通常称为"服务器端嵌入"或者叫"服务器端包含",是一种类似于ASP的基于服务器的网页制作技术。默认扩展名是 .stm、.shtm 和 .shtml。在技术上,SSI就是在静态HTML文件中,根据需求插入不同的内容。例如一个article的频道,每一个article内页都生成一个静态的HTML,如此时,header某个位置需要修改,则需要重新生成所有article的静态HTML文件。如使用了SSI,可以在HTML文件中通过注释行嵌入经常会变化的共用部分,例如登入讯息等。可以不需要重新生成所有a 阅读全文
posted @ 2013-09-01 12:56 傲雪星枫 阅读(200) 评论(0) 推荐(0) 编辑
摘要: buffer是一个内存地址空间,linux系统默认大小一般为4096(4kb)。主要用于存储速度不同步的设备或优先级不同的设备之间传递数据的区域。通过buffer可以使进程之间的相互等待变少。例如,当你打开一个文本编辑器,输入一个字符时,系统并不会立即写入磁盘。而是存储在buffer中,当写满一个buffer时,才会把buffer的内容写入磁盘。当然也可以使用flush强制将buffer的数据写入磁盘。在php中,例如 echo,print,输出并不会立即通过tcp传递给浏览器输出。而是将数据写入php buffer。当一个php buffer写满,才会通过tcp传递给浏览器。echo /pr 阅读全文
posted @ 2013-08-27 01:36 傲雪星枫 阅读(565) 评论(0) 推荐(0) 编辑
摘要: 原理:不使用Javascript,SESSION,COOKIES,FLASH。 利用图片Etag识别用户 1.根据用户的REMOTE_ADDR与HTTP_USER_AGENT生成唯一Etag。 2.将Etag输出到客户端。 3.获取HTTP_IF_NONE_MATCH 判断是否同一个用户访问。.htaccess rewriteRewriteEngine OnRewriteRule ^pic.png$ index.php?pic=1 [NC]源码 index.php: PIC ETAG 请填写讯息: 阅读全文
posted @ 2013-08-21 23:30 傲雪星枫 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 什么是 tput?tput 命令将通过 terminfo 数据库对您的终端会话进行初始化和操作。通过使用 tput,您可以更改几项终端功能,如移动或更改光标、更改文本属性,以及清除终端屏幕的特定区域。什么是 terminfo 数据库?UNIX 系统上的 terminfo 数据库用于定义终端和打印机的属性及功能,包括各设备(例如,终端和打印机)的行数和列数以及要发送至该设备的文本的属性。UNIX 中的几个常用程序都依赖 terminfo 数据库提供这些属性以及许多其他内容,其中包括 vi 和 emacs 编辑器以及 curses 和 man 程序。命令行使用说明:1.文本属性tput Color 阅读全文
posted @ 2013-08-19 00:06 傲雪星枫 阅读(522) 评论(0) 推荐(0) 编辑
摘要: 原理:通过标标签加载php文件,php文件会使用gd库生成一张1x1px的空白透明图片返回,并记录传递的参数写入log文件。sitestat.php 阅读全文
posted @ 2013-08-08 22:35 傲雪星枫 阅读(370) 评论(0) 推荐(0) 编辑
摘要: php 广告加载类,支持异步与同步加载。需要使用JqueryADLoader.class.php0){ self::$_step = $step; } if(isset($async) && is_bool($async)){ self::$_async = $async; } // 判断浏览器,如IE强制使用同步加载 if(!self::checkBrowser()){ self::$_async = false; } self:... 阅读全文
posted @ 2013-08-07 00:04 傲雪星枫 阅读(214) 评论(0) 推荐(0) 编辑
摘要: mysql 导入导出数据库1.导出数据// 导出test 数据库mysqldump -u root -p test > test.sql// 导出test数据库中user表mysqldump -u root -p test user > test_user.sql2.导入数据方法1:mysql -u root -pmysql>use testmysql>source test.sql方法2:mysql -u root -p test < test.sql 阅读全文
posted @ 2013-08-02 01:15 傲雪星枫 阅读(124) 评论(0) 推荐(0) 编辑
摘要: mailto 可以调用系统内置软件发送电子邮件。参数说明:mailto: 收件人地址,可多个,用;分隔cc: 抄送人地址,可多个,用;分隔bcc: 密件抄送人地址,可多个,用;分隔subject:邮件主题body: 邮件内容1.基本用法 mailtomailto:fdipzone@163.com2.包含抄送地址mailto:fdipzone@163.com?cc=abc@163.com3.包含密件抄送地址mailto:fdipzone@163.com?cc=abc@163.com&bcc=efg@163.com4.包含多个收件人、抄送、密件抄送人mailto:fdipzone@16.. 阅读全文
posted @ 2013-07-31 00:39 傲雪星枫 阅读(482) 评论(0) 推荐(0) 编辑
摘要: 原理:设置apache rewrite ,当图片不存在时,调用php创建图片。例如原图路径为:http://localhost/upload/news/2013/07/21/1.jpg缩略图路径为:http://localhost/supload/news/2013/07/21/1.jpg当访问http://localhost/supload/news/2013/07/21/1.jpg 时,如图片存在,则显示图片。否则,调用createthumb.php生成图片。目录结构如下:www/PicThumb.class.phpwww/ThumbConfig.phpwww/upload/news/20 阅读全文
posted @ 2013-07-21 14:24 傲雪星枫 阅读(316) 评论(0) 推荐(0) 编辑
摘要: Apache模块 mod_env说明:允许Apache修改或清除传送到CGI脚本和SSI页面的环境变量模块名:env_module源文件:mod_env.c本模块用于控制传送给CGI脚本和SSI页面的环境变量。所传送的环境变量可以来自调用httpd进程的shell,或者来自配置过程中所设定(set)或撤销(unset)的变量。SetEnv 指令说明:设置环境变量语法:SetEnv env-variable value作用域:server config, virtual host, directory, .htaccess覆盖项:FileInfo模块:mod_env设置一个环境变量,该变量会传送 阅读全文
posted @ 2013-07-20 11:22 傲雪星枫 阅读(422) 评论(0) 推荐(0) 编辑
摘要: 今天需要将某个网站般去另一台服务器。设置好运行,显示一大堆Deprecated。Deprecated: Assigning the return value of new by reference is deprecated in。新服务器与旧服务器环境是一样的,后来查看php版本,发现旧服务器是 PHP 5.2.4 新的是PHP 5.3.2。之前了解到5.3 与 5.3之前的区别较大,于是查看php文档。在5.3版本之后已经不允许在程序中使用"=&"符号。如果出现了Deprecated: Assigning the return value of new by r 阅读全文
posted @ 2013-07-17 21:41 傲雪星枫 阅读(188) 评论(0) 推荐(0) 编辑