浏览模式: 普通 | 列表
以下就是Windows 2003 + IIS 下,如何在PHP扩展里打开openssl支持的方法:

1、在c:\windows\php.ini中
将;extension=php_openssl.dll前面分号(注释)去掉

2、复制php安装目录中的以下2个文件:

libeay32.dll
ssleay32.dll

复制到 C:\windows\system32

3、复制PHP\ext目录中的 php_openssl.dll 至 C:\windows\system32
4、重启IIS


=====================================================
isapi方式需要指定变量 PATH 和 PHPRC
遇到问题:如果没有生效,首先看php.ini是否成功加载,在phpinfo()中看 Configuration File (php.ini) Path (none)
...

阅读全文…

关于系统运维监控的几点建议

[ 2016-08-05 22:22:21 | 作者: admin ]
目前很多企业信息化系统都有自己的监控平台和监控手段,无论是采用哪种手段去实现对系统的实时监控和故障告警,大多采用的方式也只有两种:集中式监控和分布式监控。本文作者根据自身公司监控存在的问题,总结了一些经验并提出一些在监控平台的建议,以供大家参考学习,如有考虑不周的地方还希望大家多多批评指正。

为了更好、更有效的保障系统上线后的稳定的运行。对于服务器的硬件资源、性能、带宽、端口、进程、服务等都必须有一个可靠和可持续的监测机制,统计分析每天的各种数据,从而能及时反映出服务器哪里存在性能瓶颈、安全隐患等。另外是要有危机意识,就是了解服务器有可能出现哪些严重的问题,出现这些问题后该如何去迅速处理。比如数据库的数据丢失,日志容量过大,被黑客入侵等等。

一、上线之前的准备工作

1、首先是备份,做好定时备份策略,备份所有你认为重要的数据,并且定期检查你的备份是否有效、全面;

2、日志轮换,无论你想用哪种轮换方式,控制日志增长避免驱动器已满是你的目的;
...

阅读全文…
p.s. 较新版本的nginx中默认已经加载了 ngx-http-geo-module 和 ngx-http-map-module ,所以不必再额外添加模块。
另外,如果修改nginx.conf没有生效,-s reload无法生效的话需要干掉所有nginx进程,重新打开nginx 。参考: http://blog.xg98.com/article.asp?id=2656

在没有人为操作删除的情况下(without-http_geo_module),nginx默认模块中已经加载了ngx-http-geo-module相关内容;
ngx-http-geo-module可以用来创建变量,变量值依赖于客户端 ip 地址;
ngx-http-map-module可以基于其他变量及变量值进行变量创建,其允许分类,或者映射多个变量到不同值并存储在一个变量中;
...

阅读全文…
p.s. nginx里面有2个模块可以限制客户端的访问频率:limit_req和limit_conn ,具体的区别可以再查,这里只讲述 limit_req ,一般也够用了。
p.s. 如果修改配置不生效,需要杀进程重新开 nginx 。参考: http://blog.xg98.com/article.asp?id=2656


本文介绍下,nginx环境中使用Limit Requests模块,限制单个IP请求速率的方法,有需要的朋友,参考下吧。

Limit Requests模块可以限制单个客户端发送请求的速率。

示例配置如下:
http {
     limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s;
     server {
             location ~ .*\.(php|php5)?$
...

阅读全文…

nginx geo使用方法

[ 2016-08-03 14:37:18 | 作者: admin ]
geo指令使用ngx_http_geo_module模块提供的。默认情况下,nginx有加载这个模块,除非人为的 --without-http_geo_module。 ngx_http_geo_module模块可以用来创建变量,其值依赖于客户端IP地址。 geo指令 语法: geo [$address] $variable { ... } 默认值: — 配置段: http 定义从指定的变量获取客户端的IP地址。默认情况下,nginx从$remote_addr变量取得客户端IP地址,但也可以从其他变量获得。


geo $remote_addr $geo {
                default 0;
                127.0.0.1 1;
}
geo $http_client_ip $geo {
                default 0;
                127.0.0.1 1;
}
普通nginx日志,得到ip访问前10位:
awk '{print $1}' access.log |sort|uniq -c|sort -nr|head -10

普通nginx日志,根据时间段来得到ip访问前10位:
sed -n '/15:38:00/,/15:40:00/p' access.log | awk '{print $1}' |sort|uniq -c|sort -nr|head -10


日志格式范例如下:
2013-10-29 10:26:09, INFO, send toEmail=wuas6662@163.com,templateId=23,titleId=11,type=3,sendEmail=noreply+renrenzhichang@mail.xiaozhao.com,ip
...

阅读全文…

php使用 memcache 来存储 session

[ 2016-07-25 16:28:40 | 作者: admin ]
Memcache和PHP memcach扩展安装请见http://koda.iteye.com/blog/665761

设置session用memcache来存储

方法I: 在 php.ini 中全局设置
Php.ini代码 收藏代码
         session.save_handler = memcache
         session.save_path = "tcp://127.0.0.1:11211"



方法II: 某个目录下的 .htaccess
Php.ini代码 收藏代码
         php_value session.save_handler "memcache"
         php_value session.save_path "tcp://127.0.0.1:11211"

...

阅读全文…
我们要生成二维码都需要借助一些类库来实现了,下面我介绍利用PHP QR Code生成二维码吧,生成方法很简单,下面我来介绍一下.

利用php类库PHP QR Code来实现,不需要装额外的php扩展,首先下载类库包,有时候地址打不开,地址:http://phpqrcode.sourceforge.net/

下载:
国内下载:http://www.jb51.net/codes/189897.html
国外下载:http://sourceforge.net/projects/phpqrcode/

例子,使用PHP QR Code类库创建二维码。

1,浏览器输出:
<?
include "phpqrcode/phpqrcode.php";
$value="http://www.jb51.net";
$errorCorrectionLevel = "L";
$matrixPointSize = "4";
...

阅读全文…