Karrigell 中文版官方文档

鉴客 发布于 2010/03/21 08:37
阅读 976
收藏 0

1. Introduction

Karrigell是一个用Python写的简单的Web解决方案。它被设计的简单易用:集成web server和数据库(PyDbLite), 可以通过简单的方式访问环境变量和表单字段,但是Karrigell的功能仍然很强大:Python脚本在服务器的同一个进程被执行,服务器页面可以包含HTMLPython代码(就像PHP,JSP,ASP),简单的身份验证,session管理,国际化等。
  
Karrigell也可以同其它web server一齐工作,像Apache,XitamiLightTPD都被Karrigell支持。并且当前流行的数据库(sqlite,MySql,PostGresQL,)都可以通过相关的Python APIKarrigell中 使用。
  
Karrigell的分发包里自带有一组示例文件,包括一个Wiki server,一 个论坛,一个blog引擎和一个portal

2.Installing Karrigell

首先我们要到Python语言的官方网站去下载并安装一个2.3或更高版本的Python
 
然后我们把下载的Karrigell压缩 文件解压到一个文件夹如c:\Karrigell,然后进入这个叫Karrigell-2.3.5的文件夹,我们把这个文件夹叫做服务器文件夹。

为了运行Karrigell,进入服务器文件夹然后打开控制台 窗口运行

(server dir)>Karrigell-2.3.5>python Karrigell.py

 

我们会看到如下信息:

Karrigell 2.3.5 running on port 80
Debug level 1
Press Ctrl+C to stop

在浏览器中输入http://localhost, 我们会看到Karrigell的 主页。

我建议设置管理员用户名和密码:它们可用于许多程序,包括可用来管理Mysqlsqlite数 据库。因此我们打开控制台窗口然后进入admin文件夹运行script k_password.py

 

(server dir)>Karrigell-2.3.5/admin>python k_password.py

然后输入用户名和密码。

3. The Web server

默认内置的web server是异步的,就像Python的 标准模块asyncore asynchat。 经过我测试后,发现它们很好用响应速度很快。

 

3.1 The Root Directory 

根目录是用来放其它文件的文件夹它在URL中处于最顶端;如,我们把myfile.htm放在根目录里,那么我们就可以通过http://myhost/myfile.htm来访问这个页面,其中myhost是我们主机的名字(本机是localhost).

刚安装Karrigell时,根目录默认是服务器目录下的webapps子 目录。我们可以修改配置文件来改变这个设置。

3.2 Serving static files 

要在Karrigell里使用静态文件(HTML文 件,GIFJPEG图 像,等)我们可以使用自己喜欢的工具创建然后把它们放在根目录里。 

假设我们新建一个HTML文档叫做myFile.htm并 把它放在根目录里,然后打开我们的浏览器输入d地址: http://myhost/myFile.htm,我们就可以看到文件显示在浏览器里了。

如果我们把静态文件放在一个子目录里,那么我们就需要给它起一个名字:如文件myImage.gif放 在子目录Images里,我们就可以访问http://myhost/Images/myImage.gif

要想把这些文件放在根目录以外,我就要用到别名了。

如果一个地址没有指定文件名但是匹配一个目录,那么服务器将会依次查找index.html,index.htm,index.py,index.pih,index.hipindex.ks。 如果都没有找到就会打印出这个目录的所有子目录和文件,如果找到多个index文件将会触发一个异常。

如果在路径里没有指定文件的扩展名,服务器就会查找文件可能的一个扩展名html,htm,py,pih,hipks。 如果找到一个,这个文件就会被访问;如果找到多个文件名相同的文件,将会触发一个异常;如果文件没找到也会触发一个异常。

3.3 Command line options

命令行是:

python Karrigell.py [-P port] [-S] [-D] [initFile]

参数:

  • portHTTP的端口号(默认是80)
  • S 代表"silent"模式:默认的Karrigell打印出收到的每一个请求的跟踪信息。使用-S选项,将不会打印出来。
  • D 设置调试等级为1
  • initFile是一个配置文件。默认的是服务器目录下的Karrigell.ini文件。

 

PS:本文翻译自Karrigell的 官方网站:http://karrigell.sourceforge.net/en/front.htm

加载中
返回顶部
顶部