Differences between revisions 17 and 150 (spanning 133 versions)
Revision 17 as of 2005-10-03 01:21:56
Size: 4241
Editor: rockety
Comment:
Revision 150 as of 2009-12-25 07:18:59
Size: 535
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
-- rockety ([[Date(2005-09-24T01:45:06Z)]])
[[TableOfContents]]
''因为你,我才在这沙漠中独步而行……''

= 学习记录 =

---- /!\ '''Edit conflict - other version:''' ----
## 专门的文章使用子页面,利于再次整理,分类!非常好的入门!收录到 Quickinto 系列了!谢谢! ZoomQuiet
[[Include(RocketyKarrigell)]]


== 完成情况 ==
 * '''am'''

 * '''pm'''

== 其它 ==
''备忘...''

---- /!\ '''Edit conflict - your version:''' ----

== Karrigell ==

=== 配置文件 ===

配置选项在配置文件中设定。默认为服务器目录中的Karrigell.ini。你可以在命令行把它设为其它的文件。

配置文件分为几个部分:

=== [Directories] ===

'''root'''

设置root选项为根目录的完整路径,你从那里发布文档。初始安装这一项没有设定,默认为服务器目录。

'''protected'''

受保护目录列表;对于这些目录中的每个脚本,执行前都会先执行一个叫AuthentScript.py的脚本。这个AuthentScript.py必须由管理员创建并放进目录。


默认,只有admin目录是受保护的。用“;”分割来添加更多的目录。

'''allow_directory_listing'''

如果一个url对应的目录没有index文件,由本项来决定谁可以看这个目录的内容:
Line 47: Line 2:
all = 所有人

none = 没有人

admin = 只有管理员 - 它的登录密码由admin目录中的k_password.py来配置。
}}}
默认值是“admin”。

=== [Applications] ===

映射扩展名的MIME类型;据我所知这可以在Netscape上工作,但IE上不行。

=== [Alias] ===

你可以为某个目录指定一个别名。例如,如果你创建这个别名:scripts = C:\My Documents\Karrigell scripts,那么[http://localhost/scripts/index.htm]这个url就会访问c:\My Documents\Karrigell scripts\index.htm这个文件。

=== [Server] ===

'''port'''

设置服务器端口(默认为80)

'''debug'''

这个选项指定debug级别。如果设置为1,所有被导入的模块在每次导入时都会被重置,所以如果你改动了某个被导入的脚本你也不必重启服务器。

'''silent'''

如果这个选项被设置为1,控制台窗口就不打印任何消息。

'''zip'''

如果这个选项被设置为1,并且用户代理支持gzip编码(大多数浏览器支持),服务器压缩发送给用户代理的数据。这减少用户网络负荷,但多少会增加一点服务器的负荷。

'''global'''

这个选项指定所有脚本运行时需要导入的模块的路径。如果有这样一行:

{{{
   global = %(base)s/myScript.py; %(base)s/myScript.py
因为你,我才在这沙漠中独步而行……
Line 89: Line 5:
则myScript和myScript模块都可以在所有脚本的名称空间中可用。 ||<|5 35%> <<MonthCalendar>> ||<-2 #c7cedc : 65%> '''我是谁'''||
||<: #e0e0e0> 网名 ||< #e0e0e0> 肯定来过, rockety ||
||<: #e0e0e0> E-mail ||< #e0e0e0> rocker.yuan '''At''' gmail.com ||
||<: #e0e0e0> MSN ||< #e0e0e0> rock_ety '''AT''' hotmail.com ||
||<: #e0e0e0> QQ ||< #e0e0e0> 66057826 ||
||<-3 #c7cedc :> '''逝去日子''' ||
||<-3 #e0e0e0> <<Include(^rockety/2005-.*,'简报',4,sort=descending,items=13,titlesonly)>> ||
Line 91: Line 13:
'''ignore'''

如果找不到就忽略的url列表(返回HTTP代码204而不是404)。默认忽略/favicon.ico。


=== [Translation] ===

指定应用程序使用的语言,无论浏览器的该选项是什么。如果不想做任何转译,就设置为lang=default,如果想使用英语,设置为lang=en,以此类推。

装载配置文件前karrigell设定了一个基本变量,它的值是服务器目录。参考默认配置文件Karrigell.ini中的%(base)s/。

== 编程 ==

在karrigell中编程有几中风格:

 *纯粹的python脚本,有一点不同,里面嵌有html
 *karrigell服务,可以处理整个站点
 *象PHP那样,将python代码嵌入HTML

它们都会在这份文档中被描述,它们都使用同样的方式访问HTTP环境和表单域。

=== 访问HTTP环境 ===

HTTP环境访问可以通过脚本名称空间中的全局变量来完成:

 *HEADERS

是关于HTTP头的一个字典:键是头名称,值是头信息的值。例如HEADERS[‘ACCEPT-LANGUAGE']将返回accept-language头部信息





(先记在这里,将win2kpro的i386下的setupp.ini中的第二行最后三个数字改为270,安装时就不用输入序列号了
  * 哈哈哈!欢迎分享 [wiki:self/KarrigellQuickIn Karrigell] 的体验!!! 不过上面这技巧是怎么发现的?描述一下子故事哪 -- ZoomQuiet

---- /!\ '''End of edit conflict''' ----
<<Include(/Discuss)>>

rockety (last edited 2009-12-25 07:18:59 by localhost)