Aug14

【原创】SQUID学习笔记

Author: leeon  Click: 565   Comments: 0 Category: 其他  Tag: squid

no_cache deny xxxx

表示拒绝缓存xxxx对象

 

SQUID集群中ICP协议(默认端口:3130)是牺牲时间为代价,每次Miss的请求都要等ICP返回才能判断是否转发请求。

Digest是牺牲空间换事件为代价,将邻居cache的数据的摘要信息下载到本地,判断miss的请求是否在邻居cache中存在

HTCP协议(默认端口:4827)相比ICP协议更加复杂,ICP查询仅包括URI,而HTCP查询支持完整的HTTP请求头部。

 

查看squid debug日志最佳方式:

squid -k debug; sleep 5; squid -k debug

此命令可以重复使用,第一次使用是开启,第二次调用则关闭

 

SQUID日志中关于请求URI的记录默认情况是去掉“?”号后面的内容的,如果要记录完整的URI信息,需要在配置文件中加上:

strip_query_terms off

May17

java was started but returned exit code=1问题解决小记

Author: leeon  Click: 1988   Comments: 0 Category: 其他  Tag: eclipse,exit,bug

昨日在windows的eclipse cdt上创建了一个cpp项目,双击打开cpp源码无故退出,俺使用的eclipse cdt版本是64位20110218-0911,jdk是1.6.24,windows 7 64位sp1,8G内存,原本创建的一个c项目使用很正常,创建cpp项目却提示如下错误:

java was started but returned exit code=1

网上搜寻的结局方式不外乎两种:

1. 修改eclipse.ini文件

2. 安装32位版本

第一种方式完全不靠谱,第二种不想折腾再安装32位版本,看jdk有1.6.25新版本于是下载安装新版本试试。果然安装升级新版本jdk后问题解除,eclipse自动退出的毛病没了。

May14

【转载】OAuth与OpenId的区别

Author: leeon  Click: 654   Comments: 0 Category: 其他  Tag: oauth,openid

OAuth和OpenID的区别在于应用场景的区别,OAuth用于授权的,是一套授权(Authorization)协议;OpenID是用来认证的,是一套认证(Authentication)协议。两者是互补的。

“OpenID:
1.用户希望访问其在example.com的账户
2.example.com (在OpenID的黑话里面被称为“Relying Party”) 提示用户输入他/她/它的OpenID
3.用户给出了他的OpenID,比如说"http://user.myopenid.com"
4.example.com 跳转到了用户的OpenID提供商“mypopenid.com”
5.用户在"myopenid.com"(OpenID provider)提示的界面上输入用户名密码登录
6.“myopenid.com" (OpenID provider) 问用户是否要登录到example.com
7.用户同意后,"myopenid.com" (OpenID provider) 跳转回example.com
8.example.com 允许用户访问其帐号

OAuth:
1.用户在使用example.com时希望从mycontacts.com导入他的联系人
2.example.com (在OAuth的黑话里面叫“Consumer”)把用户送往mycontacts.com (黑话是“Service Provider”)
3.用户在mycontacts.com 登录(可能也可能不用了他的OpenID)
4.mycontacts.com问用户是不是希望授权example.com访问他在mycontact.com的联系人
5.用户确定
6.mycontacts.com 把用户送回example.com
7.example.com 从mycontacts.com拿到联系人
8.example.com 告诉用户导入成功”

Apr23

配置Trac+Apache小记

Author: leeon  Click: 956   Comments: 0 Category: 其他  Tag: trac,python,apache

trac-admin在initenv环境的时候提示如下错误:

[code="plain"]
Trac Error: Cannot load Python bindings for SQLite
[/code]

重新下载pysqlite重新安装即可

http://code.google.com/p/pysqlite/downloads/list

 

另外在编译mod_python的时候提示:
connobject.c: 在函数‘_conn_read’中:
connobject.c:142: 错误: 在非结构或联合中请求成员‘next’
apxs:Error: Command failed with rc=65536

类似错误
解决方案:

修改src/connobject.c第142行
把!(b == APR_BRIGADE_SENTINEL(b) || 改为!(b == APR_BRIGADE_SENTINEL(bb) ||

 

启动trac其实有多种方式,如果追求性能最好让trac运行在webserver上,那么apache就派上用场了,给apache安上mod_python,这里有些可以记录的:



DocumentRoot /data/trac/ 
ServerName trac.example.com
#让解析根的时候就后台去运行trac的cgi,这个cgi在trac目录cgi-bin下
alias / /install_bak/trac/cgi-bin/trac.cgi

#开启python支持
SetHandler mod_python
PythonInterpreter main_interpreter
#把请求交给trac去执行
PythonHandler trac.web.modpython_frontend
#trac项目所在目录
PythonOption TracEnv /data/trac
#trac项目url访问目录
PythonOption TracUriRoot /

如何给Trac加上验证?

答:我这里给绑定的是http的验证,只要在apache的httpd.conf里面配置:

    
        AuthType Basic
        AuthName MemNote
        AuthUserFile /data/trac/trac.passwd
        Require valid-user
       

注意location的访问路径,另外authuserfile中的文件使用htpasswd命令创建,注意最好不要用-p参数,加了p参数后密码是明文,trac验证会失败。

创建用户的命令:

[code="bash"]
htpasswd -c trac.passwd admin
[/code]

具体的权限操作可以通过trac-admin来绑定admin的权限组

Trac汉化问题解决:

1. 安装babel
sudo easy_install babel
或者
sudo easy_install babel

如果自己的centos升级过python的话自带的python-setuptools有可能有问题,不能用rpm包的,需要自己重新安装easy_install,这时候easy_install命令有可能不再/usr/bin的目录下,有可能安装在自己安装的python版本的bin目录下,例如:/usr/local/python2.7/bin
2. 生成pot
python setup.py extract_messages
3. 编译po(这里可以指定编译为哪种语言,不指定就是全部)
python setup.py update_catalog
4. 检查你要的语言装了没
python setup.py update_catalog -l zh_CN
5. 编译为mo
setup.py compile_catalog -f
6. 安装trac
python setup.py install

这时用中文浏览器访问,显示的就是中文了

分类

标签

归档

最新评论

王爷在21:32:04评论了
【原创】获取jQuery中Ajax函数的返回值的方法
Funny在10:22:51评论了
shell数组使用方法小记
kevinems在11:30:08评论了
【原创】使用gitosis和tortoisegit打造自己的git服务
candy在13:11:40评论了
【原创】beautifulsoup解析中文网页乱码解决
thenbsp.com在16:17:48评论了
中国邮政EMS就是一坨屎

我看过的书

链接

其他

访问本站种子 本站平均热度:1218 c° 本站链接数:55 个 本站标签数:250 个 本站被评论次数:33 次