`
waveeee
  • 浏览: 52740 次
  • 来自: 上海
社区版块
存档分类
最新评论

http://hi.baidu.com/24cool/blog/item/32f4e9f81c40c80dd9f9fddb.html

阅读更多

[转]10步完成freebsd下 python+django+fastcgi+lighttpd+sqlite3 源码安装与配置.
2007年07月31日 02:55

本文章作者寒玉轩,可任意转载。
转载时请注明:来自:

htdocs.org 作者:寒玉轩

今日将vm虚拟服务器重新搞了一遍~系统换成了freebsd6.2
WEB服务器换成了lighttpd 感觉apache实在是太重的东西了。
python2.5+django0.96 全是最新的。
由于是lighttpd,当然选择fastcgi与django通讯咯~~
数据库是sqlite-3.3.13, 本想用3.4.0的。但不知道为什么
在freebsd6.2下始终编译不成功~      google了半天也没找到答案~ 难道是太新了?嘿~


1.最小话安装freebsd6.2 ........(以后再写。会有插图哦!)htdocs.org 作者:寒玉轩

2.sqlite3 :      pysqlite2还没有支持python2.5,而python2.5又整合了sqlite3~
所以我们需要先安装sqlite3 以便安装python2.5时激活这个连接模块。
#tar zxvf sqlite-3.3.13.tar.gz
#cd sqlite-3.3.13
#./configure             (缺省路径是/usr/local)
#make
#make install

3.python2.5:
没什么特殊要求默认就好咯
#tar zxvf python-2.5.tar.gz
#cd python-2.5
#./configure
#make
#make install

4.django-0.96:
#tar zxvf django-0.96.tar.gz
#cd django-0.96
#python setup.py install

cd到一个合适的地方~然后:
#django-admin.py startproject test1       (建立了一个名为"test1"的django站点。)

5.pcre-7.1
由于lighttpd 的 rewrite 是需要用到pcre正则。 为了lighttpd安装的时候可以激活mod_rewrite模块~ 我们需要先安装pcre-7.1。
#tar zxvf pcre-7.1.tar.gz
#cd pcre-7.1
#./configure
#make
#make install

6.lighttpd-1.4.13
#tar zxvf lighttpd-1.4.13.tar.gz
#cd lighttpd-1.4.13
#./configure --prefix=/usr/local/lighttpd         (缺省为/usr/local)
#make
#make install
#cp doc/lighttpd.conf /usr/local/lighttpd       (lighttpd 配置文件)

7.flup-0.5  htdocs.org 作者:寒玉轩
lighttpd默认已经整合了mod_fastcgi~ 所以我们只须安装flup.
#tar zxvf flup-0.5.tar.gz
#cd flup-0.5
#python setup.py install

8.建立fcgi文件
lighttpd 运行django 是通过fcgi文件的      所以我们要在站点的根目录下建力一个test1.fcgi文件(假设站点名称为test1)
文件内容如下:(不可照搬,需按照不同路径,不同站点名以及不同的功能需求做相应的更改。)


#!/usr/bin/python   
import sys, os   
  
# Add a custom Python path.   
sys.path.insert(0, "/usr/local/bin/python")   
  
# Switch to the directory of your project. (Optional.)   
# os.chdir("/usr/htdocs/test1")   
  
# Set the DJANGO_SETTINGS_MODULE environment variable.   
os.environ['DJANGO_SETTINGS_MODULE'] = "test1.settings"  
  
from django.core.servers.fastcgi import runfastcgi   
runfastcgi(method="threaded", daemonize="false")
  

 


记得修改执行权限: #chmod +x manage.py
启动FCGI:

#/usr/htdocs/test1/manage.py runfcgi method=prefork socket=/tmp/test1.sock pidfile=django.pid

 

9.修改 lighttpd.conf :    htdocs.org 作者:寒玉轩
(不可照搬,按不同路径,不同功能 不同站点名做相应的更改。)


server.modules = (
"mod_rewrite",
"mod_redirect",
"mod_evasive",
"mod_alias",
"mod_access",
"mod_fastcgi",
# "mod_expire",
# "mod_compress",
"mod_accesslog"
)

mimetype.assign = (
".gif"              =>          "image/gif",
".jpg"              =>          "image/jpeg",
".jpeg"             =>          "image/jpeg",
".css"              =>          "text/css",
".js"               =>          "text/javascript"
)

server.document-root = "/usr/htdocs/test1"         #此路径用来放置.fcgi文件。
fastcgi.server = (
"/test1.fcgi" => (
"main" => (
"socket" => "/tmp/test1.sock",
"check-local" => "disable"
)
)
)
url.rewrite = (
"^(/site_media/.*)$" => "$1",
"^(/.*)$" => "/test1.fcgi$1"
)

10.启动lighttpd  htdocs.org 作者:寒玉轩
#/usr/local/lighttpd/sbin/lighttpd -f /usr/local/lighttpd/lighttpd.conf

----------------------------------------------------------------------------------
呵呵好了,到这里就告一段落了~ 
我的django 通过lighttpd+fastcgi的方式跑起来咯~
测试一下你的服务器启动起来了吗?? 
相信大家都可以成功:)
有不清楚的可以给我留言,
以后再给大家一些好的文章:)www.htdocs.org

分享到:
评论

相关推荐

    微信小程序(.wxapkg)解包心得以及未公开API猜测.zip

    微信小程序(.wxapkg)解包心得以及未公开API猜测微信应用程序解压微信小程序解包中心思路、源码http://lrdcq.com/me/read.php/66.htm解包工具Python2版本...//github.com/coolzilj/kaitai_struct_format_for_wxapkg目前...

    微信小程序.wxapkg解压工具(.Net Core).zip

    //github.com/chenrensong/SS.UnWxapkgPython2版本https://gist.github.com/feix/32ab8f0dfe99aa8efa84f81ed68a0f3ePython3版本https://gist.github.com/Integ/bcac5c21de5ea35b63b3db2c725f07adPHP版本...

    2012调客必备10个权威在线调研网站

    #### 9. **清研通网络调研** - **网址**:http://netinsight.cn/Setup.ashx?intro=_gfmfyfafffgf8dibi - **特点**:清研通网络调研是一个专注于学术和商业研究的高端调研平台。它不仅提供了丰富的调研资源,还拥有...

    wechat-app-unpack-1:小程序原始码:跳一跳,卡娃电子相册等等

    微信应用解压缩微信小程序解包心得思路,原始码: : 解包工具: Python2版本: ://gist.github.com/feix/32ab8f0dfe99aa8efa84f81ed68a0f3e Python3版本: ://gist.github.... : JAVA版本: : nodejs版本: : Kaitai...

    基于云原生小程序开发企业/个人微展示微信小程序系统源码.zip

    基于云原生小程序开发企业微展微信小程序系统源码。企业微展,借助微信小程序平台,打造企业/个人的在线展示平台。... 修改专属域名,和后台做关联 打开修改 config.js 文件,把 subDomain 文件改成...wx104a1a20c3f81ec2

    批量删除文件并重命名最后一个修改的文件

    批量重命名脚本、、、、、、、、、、、、、 使用帮助文章地址: https://blog.csdn.net/regretTAT/article/details/141393503?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522952D7F81....pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~...

    Mac 与 PC 键盘布局对比

    Mac 与 PC 键盘布局对比ommand是Mac里最重要的修饰键,在大多数情况下相当于...链接:https://www.jianshu.com/p/240f31f6f81a 來源:简书 简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

    批量重命名脚本 自定义文件名称

    ---------https://blog.csdn.net/regretTAT/article/details/140982634?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522952D7F81-A76B-4179-9C8A-3BD00EA91D99%2522%252C%2522scm%2522%253A%252220140713...

    2020_tp_pasteleros_objetos

    ob粉TP个人寄售者: ://docs.google.com/document/d/1f81DK-oblXdKjqoBGFKBAVOlVOz2fgjUDTgJqR3mHsU/edit usp sharing

    IOS培训PPT&Demo

    9. **App Store发布流程**:简述提交应用到App Store的步骤和注意事项。 【标签】"IOS PPT Demo Objective-C 入门" 明确指出,这份资源特别关注Objective-C语言的学习,Objective-C是苹果开发平台早期的主要编程...

    travel.zip

    │ │ │ m20095dce32ba5bb1c9fc6625078a0523d.jpg │ │ │ m2013b314280b1da09fae1fbb3de70d35c.jpg │ │ │ m20164d93d7c0a1283cd9d664ffb74cb3f.jpg │ │ │ m2017784848ae0091547160f77e682d9d8.jpg │ ...

    FileInfo 0.0.0011

    在写一些系统安全和维护方面的blog文章时,有时要提供一些恶意程序文件的属性、语言、版本、时间、MD5值、SHA1、CRC32、数字签名等信息,现在这些工作可以用FileInfo来完成了。  这个程序支持多个文件的拖动…… ...

    matlab代码sqrt-JFVM.jl-d32f81f0-000d-5c7c-8375-24efa40f8589:@UnofficialJu

    Matlab代码sqrt JFVM 重要笔记 该代码现在可与Julia 1.0一起使用。 您需要做的就是检出master分支: ] add JFVM#master 3D可视化要求通过PyCall调用Mayavi。...最近它出现了太多问题,因此我决定禁用它,直到找到更好的...

    matlab代码sqrt-JFVM.jl-d32f81f0-000d-5c7c-8375-24efa40f8589:最后由@Unofficia

    Matlab代码sqrt JFVM 重要笔记 该代码现在可与Julia 1.0一起使用。 您需要做的就是检出master分支: ] add JFVM#master 3D可视化要求通过PyCall调用Mayavi。...最近它出现了太多问题,因此我决定禁用它,直到找到更好的...

    FileInfo 0.0.0012

    在写一些系统安全和维护方面的blog文章时,有时要提供一些恶意程序文件的属性、语言、版本、时间、MD5值、SHA1、CRC32、数字签名等信息,现在这些工作可以用FileInfo来完成了。  这个程序支持多个文件的拖动…… ...

    python计算两个地址之间的距离方法

    parameters = {'address': address, 'key': 'cb649a25c1f81c1451adbeca73623251'} base = 'http://restapi.amap.com/v3/geocode/geo' response = requests.get(base, parameters) answer = response.json() ...

    delphi7系统五子棋游戏系统

    object Form1: TForm1 Left = 312 Top = 126 Width = 459 Height = 477 Caption = #20116#23376#26827 ... 9E9E9E9E9E9E9E9E66669E9E9E9E9E9E9E9E66669E9E9E9E9E9E9E9E9E9E9E9E 9E9E9E9E9E9E9E666666669E9E...

    python爬虫之百度API调用方法

    'ak': 'cb649a25c1f81c1451adbeca73623251' # 替换为你的API Key } # 请求URL url = 'http://api.map.baidu.com/geocoder/v2/' # 发送GET请求 response = requests.get(url, params=params) # 解析JSON数据 json...

    员工追踪器

    员工追踪器Github回购: : 视频链接:chrome-extension://mmeijimgabbpbgpdklnllpncmdofkcpn/ng/app/app.html#/files/e3daf0b3-ec22-42d4-ye6a-7f81df741376 您的任务开发人员经常必须创建接口,以使非开发人员可以...

Global site tag (gtag.js) - Google Analytics