session.save_path 不能使用相对路径

四月 28th, 2011 没有评论 »

php.ini 设置session.save_path 不能使用相对路径,否则会出错,要用绝对路径。路径最好要用分号括住
session.save_path = “E:/server/tmp/session”

phpmyadmin 3.4.0-rc1版本出现问题 http进程死掉

四月 28th, 2011 没有评论 »

今天下载了phpmyadmin 新版本使用,在winxp环境下使用,界面UI更换了,感觉不如以前的使用方便,重点不突出,这个还不是主要问题,问题是如果安装了eaccelerator会出现apache进程会死掉问题,log文件是这样
EACCELERATOR(3416): PHP crashed on opline 145 of mysqli_real_connect() at phpmyadminlibrariesdbimysqli.dbi.lib.php:114。
换回低版本没有问题,深追究也不是phmyadmin问题。

nginx 隐藏版本号

四月 24th, 2011 没有评论 »

vim nginx.conf

在http {—}里加上server_tokens off;

flash cook问题

四月 13th, 2011 没有评论 »

今天调试做flash 和php通信,其中要用到cook 做认证.怎么也不能提交成功,找到问题如下

cookie处理的bug主要体现在,通过非ie浏览器上传图片时,flash会将ie下的cookie发送到服务器端,从而引起cookie处理混乱。当上传的文件依赖于cookie信息时,就会出现错误的情况。比如,如果要求上传文件的用户必须已经登录,那么,如果ie下没有登录,当前这个非ie浏览器就不能上传文件,岂不是很郁闷。

这种情况的处理其实也就是抓住一点,在上传文件时,通过url将cookie信息传递到服务器端。

一种办法是flash和js取得通信,js将document.cookie信息传递给flash,flash再将信息在url的参数中传递给服务器端。

还有一种办法就是,通过flash控件的flashvars字段给flash传变量。这种办法能保证在客户端js未开启的情况下也能传递cookie信息给flash,还是比较保险的。不过,需要注意的是,cookie字符串中的空格的编码可能会导致最后解析出错。php通过urlencode编码空格时,会转化为%2B,而通过flash解析后,%2B会被解析为+,而不是空格。这有可能导致最后对用户信息的验证失败。

这种情况下的一个技巧就是,使用两次urlencode对cookie信息进行编码,最后flash传递到服务器端时,就能准确地读出原来的值了。

CentOS修改主机名

三月 21st, 2011 没有评论 »

更改Centos主机名

第一步:
shell 命令 #hostname yourhostname

第二步:
修改/etc/sysconfig/network中的hostname
[root@suzhouP ~]# vim /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
#HOSTNAME=localhost.localdomain
HOSTNAME=yourhostname

~

第三步:
修改/etc/hosts文件
[root@suzhouP ~]# vim /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost yourhostname
::1 localhost6.localdomain6 localhost6

nginx rewrite 域名跳转

三月 7th, 2011 没有评论 »

junguo.com跳转到www.junguo.com

其他的都不跳

if ($host = ‘quanzhi.com’)
{
rewrite  ^/(.*)$  http://www.junguo.com/$1  redirect;
}

= 等于

!= 不等于

没有||或&&与操作

/bin/sh^M: bad interpreter:处理

三月 1st, 2011 没有评论 »

win和linux 文件格式出问题了.在win下用emediter或者其他编辑器另存为改为编码格式

Vi与Vim的区别

二月 27th, 2011 没有评论 »

一直用着vi,有朋友劝我用vim,那么它们有什么区别呢?
简单点来说,它们都是多模式编辑器,
不同的是vim 是vi的升级版本,它不仅兼容vi的所有指令,
而且还有一些新的特性在里面。
vim的这些优势主要体现在以下几个方面:

1、多级撤消
我们知道在vi里,按 u只能撤消上次命令,而在vim里可以无限制的撤消。

2、易用性
vi只能运行于unix中,而vim不仅可以运行于unix,windows ,mac等多操作平台。

3、语法加亮
vim可以用不同的颜色来加亮你的代码。

4、可视化操作
就是说vim不仅可以在终端运行,也可以运行于x window、 mac os、 windows。

5、对vi的完全兼容
某些情况下,你可以把vim当成vi来使用。

近期开发新浪微博的心得

二月 19th, 2011 没有评论 »

这几天一直在开发和新浪微薄链接的系统,其中破费周折.总结了一下主要在以下几点:
1.要注意一些细节
2.网站系统架构要改善
3.新浪的api不完善
第一条,主要是细节方面.cookie,session form 提交 .
按顺序首先出现的问题是session 由于不能跨域名访问,这里说的是同一个根域名,www.junguo.info和junguo.info之间SESSION不能通用,
$_SESSION['keys'] = $keys;(域名为junguo.info)
一跳转到下一个页面(提交给新浪的域名www.junguo.info)


$o = new WeiboOAuth( WB_AKEY , WB_SKEY , $_SESSION['keys']['oauth_token'] , $_SESSION['keys']['oauth_token_secret']);
$last_key = $o->getAccessToken($_REQUEST['oauth_verifier'] );
[/code ]
取回的$last_key为401错误,具体错误说明appkey丢失,实际上是 $_SESSION['keys']['oauth_token'] , $_SESSION['keys']['oauth_token_secret'],这里的值已经为空,提交的是空值,肯定失败了.
由于这中间有个跨页面的关系,所以很难猜到是这个原因,一般认为是sina的授权出问题了,
还有个问题就是win下的开发环境,session存放位置,这个在php.ini里面设置.没有的话测试出同样的问题.
cooKie问题:
setcookie(‘sid’, ’1′, time()+$cookietime,’/',$domain);
setcookie(‘sid’, ’1′, time()+$cookietime);
这两个是不一样的,赋值的时候要注意域名,和路径,否则用同样的sid 你就去不出数值来,cookie sesion不同在于,cook必须有页面输出到客户端.
第二个,网站系统问题,特别体现在用户注册上面,由于网站用的是康盛的系统bbs,supersize,两个数据库,这个时候注册一个会员要写四个表,还要做用户名检测,是否帐号已经关联!而且注册后要自动登录,还要设置两次,一个是cookie加密,另一个用ucenter,同时有效才能登录起作用.
第三个 新浪的sdK内容还很不完善,出了问题,在新浪open.t.sina.com.cn上很难及时找到答案,demo只是说怎么用,返回的数据也不说明,是什么意思,还好新浪论坛的客服很好,不过中间也浪费了N多时间,主要是在等.

win php session 跨页面传值问题解决

二月 18th, 2011 没有评论 »

不能跨页面传值问题,一个是路径问题,还有一个是session_start();放在开头
今天就遇到个怪问题
域名问题
www.junguo.info
和junguo,.info的域名session不能互相调用