‘未分类’ 分类的存档

官方文档:http://nginx.org/en/docs/http/ngx_http_geo_module.html ngx_http_geo_module模块的主要功能为:根据ip地址赋值(创建)变量。此ip可以是客户端ip,也可以是其数据来源的ip地址(例如:可以是query参数ip,也可是cookie里面的ip、也可以是header头的ip)。此模块不但支持ipv4的ip格式,也支持ipv6的ip格式(>=1.3.10,>=1.2.7) 安装 默认情况下nginx会自动安装的此模块,除非你在安装的时候显示排除此模块安装(–without-http_geo_module) geo语法: Syntax: geo [$address] $variable { … } Default: — Context: http geo 后跟2个参数, ip地址(第一个参数) + 变量(第二个参数,需要赋值的变量名称)。 语法需要重点关注的点是: 1、 第一个参数可以省略,省略值默认为:$remote_addr。 geo $country = geo $remote_addr $country 2、 此语法只能在http上下文配置。不可配置在server或者location上下文中。 3、 参数必须是有效的ip地址,如果是非法格式,将直接转化为“255.255.255.255”的地址 4、 大括号里面是放的是kv结构体,用于匹配并赋值。k理解规则,v理解为对应的值 kv结构体除了支持基本的ip地址(地址段),可支持如下特殊参数: delete: 用于删除指定的网络 default: 如果ip与所有规则都不匹配,将会匹配此规则。类似于switch语法的default语句。如果没有匹配任何规则,也未设置default,将给变量赋值空字符串“”。 include: 包含的的文件,文件内容也需是kv结构体。 proxy: 定义可信地址。 如果请求来自可信地址,nginx将使用其“X-Forwarded-For”头来获得地址。 相对于普通地址,可信地址是顺序检测的。 proxy_recursive: 开启递归查找地址。 如果关闭递归查找,在客户端地址与某个可信地址匹配时,nginx将使用”X-Forwarded-For”中的最后一个地址来代替原始客户端地址。如果开启递归查找,在客户端地址与某个可信地址匹配时,nginx将使用”X-Forwarded-For”中最后一个与所有可信地址都不匹配的地址来代替原始客户端地址。 ranges: 使用以地址段的形式定义地址,这个参数必须放在首位。为了加速装载地址库,地址应按升序定义。 样例 官方demo1: geo [...]

2020年5月20日21:42 | 没有评论
分类: 未分类
标签:

沉寂了5年后 我要继续更新微博了

2020年5月19日20:09 | 没有评论
分类: 未分类
标签:

1、安装xhprof扩展 下载地址:https://pecl.php.net/package/xhprof 2、配置php.ini 3、下载web界面程序并部署 下载地址:https://github.com/phacility/xhprof 将apache或者nginx解析地址解析到xhprof_html目录 4、在你需要监控的页面或者应用中添加代码 a/页头添加如下代码 b/页尾添加如下代码 5、访问解析到xhprof的url  

2015年5月26日16:04 | 1 条评论
分类: 未分类
标签: ,

1、安装xdebug(不多做介绍) 2、配置php.ini的xdebug 配置文件如下 3、下载webgrind程序 下载地址:https://github.com/jokkedk/webgrind 4、安装graphviz #aptitude install graphviz #graphviz 附带 dot 命令用于下文的配置 5、修改webgrind配置文件config.php `$pythonExecutable`的值改为python命令路径 `$dotExecutable`的值改为dot命令路径 6、访问webgrind配置的web页面即可  

2015年5月26日15:41 | 没有评论
分类: 未分类
标签: ,

测试1 普通sql 测试查询语句: $result = zf_Service::loadModel(‘Account’)->findOne(‘aid=475546′); $users = Account::find(475571);//$users = Account::where(‘aid’, ‘=’, 475547)->get();// 测试更新语句 zf_Service::loadModel(‘Account’)->update(array(‘email’=>’a@qq.com’),”`aid`=’475571′”); Account::where(‘aid’, ‘=’, 475571)->update(array(‘email’ => ‘as@qq.com’)); 测试插入 zf_Service::loadModel(‘Test’)->insert($insertData);//Test::create(array(‘name’ => ‘John’)); 基本测试 ******************************************************** 测试类型 yaf+composer yaf+zf 无sql执行 7ms 13ms 查找 20ms(307ms) 20ms(136ms) 更新 25ms(236ms) 22ms(151ms) 插入 24ms(234ms) 25ms(126ms) 注:括号里面是循环100次执行的结果,括号外面为执行1次的结果 压力测试 ******************************************************** 测试类型 RPS TPR FR 无sql执行 306/183 3.5/5.3 194/194 有sql执行 136/140 7.2/7.1 [...]

2015年4月3日08:39 | 没有评论
分类: 未分类
标签:

如何实现利用免费资源打造公有库以及私有库 开发规范的包文件,并将这些包发布到github or bitbucket打招共有以及私有库 开发规范的library包文件 创建共有包(github) 创建私有包(bitbucket) 如何使用https://packagist.org/ 项目中引入公共包 项目中引入私有包 1. 如何开发规范的library包 参考教程:https://packagist.org/about 创建组织架构 组织架构如下: irpackagist //根目录(irpackagis这个无所谓随便起) |—README.md //帮助文档 |—composer.json //固定格式文件(必须) |—lib //类库包目录(一般设为src或者lib) |—Iran //目录 |—Func //目录 |—StringHelp.php //类库文件1 |—StringHelp2.php //类库文件2 编写类功能文件 示例StringHelp.php如下: <?php namespace Iran\Func; class StringHelp{ static public function dd(){ echo ‘dd test’; } } 创建composer.json文件: 下面是composer.json示例: { “name”: “iran/test”, //包名字(必须) “type”: “library” [...]

2015年3月31日11:45 | 没有评论
分类: 未分类
标签:
2014年10月12日22:29 | 没有评论
分类: 未分类
标签:

上一节我们讲了vim的目录树插件NERDTree 今天我们介绍另外一个vim高效开发的插件TagList 制作详细安装步骤,具体好处自行Google 安装TagList前提条件 使用taglist plugin,必须满足 一下三个条件: a.打开vim的文件类型自动检测功能:filetype on b.系统中装了Exuberant ctags工具,并且taglist plugin能够找到此工具(因为taglist需要调用它来生成tag文件) c.你的vim支持system()调用 (一般都会支持) ——————————-以下为安装步骤————————————– 1、优先安装ctags 下载地址:http://ctags.sourceforge.net/ 安装步骤如下 2、下载安装taglist 插件 下载地址: http://www.vim.org/scripts/script.php?script_id=273 安装步骤如下 3、修改配置文件(~/.vimrc) 4、启动TlistTags 可以用”:TlistOpen“打开taglist窗口 用”:TlistClose“关闭taglist窗口 或者使用”:TlistToggle“在打开和关闭间切换。 也可以在vimrc中定义快捷键,使用键就可以打开/关闭taglist窗口: map :TlistToggle

2014年8月15日14:34 | 没有评论
分类: 未分类
标签:

neretree插件地址 http://www.vim.org/scripts/script.php?script_id=1658 安装步骤: 1、建立文件夹 在用户根目录进入.vim目录(如果没有则创建) 并创建doc  plugin目录 2、下载NERETree插件&解压 3、安装 将doc以及plugin文件copy到~/.vim/对应的目录下 完毕 打开vim 并:NERDTree回车

2014年8月13日11:49 | 没有评论
分类: 未分类
标签:

我们大众安装memcached扩展的时候 参考这个帖子即可 http://www.phpno.com/php-memcached.html   但是目前阿里云退出128M的ocs缓存服务,需要用上memcached的sasl认证 所以在安装编译的时候添加特定参数 安装libmemcached的时候要加上: –enable-sasl 安装memcached的时候必须使用如下版本 wget http://pecl.php.net/get/memcached-2.1.0.tgz 安装如下

2014年8月2日11:22 | 没有评论
分类: 未分类
标签: