linuxweb.pyspawn-fcgiweb.py配置 spawn fcgi启动
环境依赖的软件包Nginx 0.8.* or 0.7.* (需要包含fastcgi和rewrite模块)。Webpy 0.32Spawn-fcgi 1.6.2Flup注意:Flup是最常见的忘记装的软件,需要安装
更老的版本应该也可以工作,但是没有测试过,最新的是可以工作的
一些资源Nginx wikiSpawn-fcgiFlupNotes你可以重命名index.py为任何你想要的文件名。/path/to/www 为代码路径。/path/to/www/index.py为python代码的完整路径。Nginx 配置文件
user root root;location / { includefastcgi_params; fastcgi_paramSCRIPT_FILENAME $fastcgi_script_name; # [1] fastcgi_param PATH_INFO$fastcgi_script_name; # [2] fastcgi_pass127.0.0.1:9002;}对于静态文件可以添加如下配置:
location /static/ { root /home/workspace/ if (-f$request_filename) { rewrite ^/static/(.*)$/static/$1 break; }}注意: 地址和端口号可能会是不同的。
Spawn-fcgi可以通过一下命令启动一个Spawn-fcgi进程:
spawn-fcgi -d /path/to/www -f /path/to/www/index.py -a127.0.0.1 -p 9002启动和关闭的命令启动:
#!/bin/shspawn-fcgi -d /path/to/www -f /path/to/www/index.py -a127.0.0.1 -p 9002关闭:
#!/bin/shkill `pgrep -f "python /path/to/www/index.py"`Note: 你可以随意填写地址和端口信息,但是一定需要和Nginx配置文件相匹配。
Hello world!讲下面的代码保存为index.py(或者任何你喜欢的),注意,使用Nginx配置的话,web.wsgi.runwsgi =lambda func, addr=None: web.wsgi.runfcgi(func,addr)这一行代码是必须的。
#!/usr/bin/env python# -*- coding: utf-8 -*-
import web
urls = ("/.*", "hello")app = web.application(urls, globals())
class hello: def GET(self): return 'Hello, world!'
if __name__ == "__main__": web.wsgi.runwsgi =lambda func, addr=None: web.wsgi.runfcgi(func, addr) app.run()注意: 同样需要给代码设置权限,代码如下chmod +x index.py。
运行打开一个 spawn-fcgi 进程.打开 Nginx.如果需要检查应用程序是否运行,使用ps aux|grep index.py可以很容易的查看。
重启nginx配置:
/path/to/nginx/sbin/nginx -s reload停止nginx:
/path/to/nginx/sbin/nginx -s stop注意:运行后可访问http://localhost访问网站,更多信息可以去参考nginx官方文档。
附带教程:关闭nginx:停止操作是通过向nginx进程发送信号(什么是信号请参阅linux文 章)来进行的
步骤1:查询nginx主进程号
ps-ef | grep nginx
在进程列表里面找master进程,它的编号就是主进程号了。
步骤2:发送信号
从容停止Nginx:
kill -QUIT 主进程号
快速停止Nginx:
kill -TERM 主进程号
强制停止Nginx:
pkill -9 nginx
另外,若在nginx.conf配置了pid文件存放路径则该文件存放的就是Nginx主进程号,如果没指定则放在nginx的logs目录下。有了pid文件,我们就不用先查询Nginx的主进程号,而直接向Nginx发送信号了,命令如下:
kill -信号类型 '/usr/nginx/logs/nginx.pid'
遇到的问题1:1.没法加载js 和css 因为static目录路径设置不对,按照第二个红色设置即可2.路径正确后但是出现错误permission denied,增加第一个红色标志 user rootroot即可。3.关了一次nginx,改了端口号重启显示端口号占用google的时候学会了这个命令lsof -i :80然后你就可以看是不是nginx继续占用,或者其他程序占用了你的端口号详情见另一篇文章介绍lsof~~
更多阅读
如何配置SQL Server 2008管理器 sqlserver2008配置
如何配置SQL Server 2008管理器——简介SQl Server 配置管理器(简称为配置管理器)包含了SQL Server 2008服务、SQL Server 2008网络配置和SQL Native Client配置3个工具,供数据库管理人员做服务器启动停止与监控、服务器端支持的网络协
如何启动wzc服务 零配置wzc
如何启动wzc服务——简介 故障现象:笔记本电脑系统为Windows XP,WIFI无线连接不上显示红叉,关闭WIFI开关再打开无用,重启电脑也同样现象,但是用手机是可以连接,证明路由器的WIFI网络是没有问题的。提示信息为:请启动Windows零配置(WZC)
DHCP服务器怎么设置怎么启动 win7 dhcp服务器设置
DHCP服务器怎么设置怎么启动——简介DHCP:动态主机配置协议,服务器用于为网络中的客户端自动分配IP地址。这种方法避免了由于手动配置IP地址导致的IP地址冲突问题,同时也减少了网络管理员的工作量。DHCP服务器怎么设置怎么启动——工
ADT的下载和配置 adt配置sdk路径
ADT的下载和配置——简介ADT:Android Development Tools, Eclipse的Android 开发插件,把Eclipse和SDK联系起来。ADT的下载和配置——工具/原料SDK环境ADTADT的下载和配置——方法/步骤ADT的下载和配置 1、可在各大型软件网载ADT,在Ecli
关闭极速版迅雷ThunderPlatform进程开机启动 thunderplatform.exe
关闭极速版迅雷ThunderPlatform进程开机启动——简介早期的迅雷安装后会在系统添加开机启动项和服务,用系统配置工具msconfig就可以将其禁止开机运行,而新版本的极速版迅雷就在mscon