Windows系统下使用flup搭建Nginx和Python环境的方法

  首先确保你的电脑里已经安装了Python和Django,接下来我们还需要两个组件,nginx服务器和flup(Python的FastCGI组件)

  nginx下载地址:http://nginx.org/en/download.html

  flup下载地址:http://www.saddi.com/software/flup/dist/flup-1.0.2.tar.gz

  与Linux下不同的是,nginx在windows下是以一个应用程序的方式运行,而不是以一个服务运行(难怪没人在windows服务器上用nginx)

  把刚刚下载好的两个压缩包都解压到C:nginx, C:flup(目录可自己选择,这里只做个演示)然后用python setup.py install 命令

  安装flup,接着就要配置nginx了,打开C:nginxconfnginx.conf,我的配置文件如下,大家可根据需要自行修改:

  ?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

138

139

140

141

142

143

144

145

#user nobody;

worker_processes 1;

#error_log logs/error.log;

#error_log logs/error.log notice;

#error_log logs/error.log info;

#pid logs/nginx.pid;

events {

worker_connections 1024;

}

http {

include mime.types;

default_type application/octet-stream;

#log_format main '$remote_addr - $remote_user [$time_local] "$request" '

# '$status $body_bytes_sent "$http_referer" '

# '"$http_user_agent" "$http_x_forwarded_for"';

#access_log logs/access.log main;

sendfile on;

#tcp_nopush on;

#keepalive_timeout 0;

keepalive_timeout 65;

#gzip on;

server {

listen 80;

server_name localhost;

#charset koi8-r;

#access_log logs/host.access.log main;

location / {

root html;

index index.html index.htm;

}

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#

error_page 500 502 503 504 /50x.html;

location = /50x.html {

root html;

}

# proxy the PHP scripts to Apache listening on 127.0.0.1:80

#

#location ~ .php$ {

# proxy_pass http://127.0.0.1;

#}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

#

#location ~ .php$ {

# root html;

# fastcgi_pass 127.0.0.1:9000;

# fastcgi_index index.php;

# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;

# include fastcgi_params;

#}

# deny access to .htaccess files, if Apache's document root

# concurs with nginx's one

#

#location ~ /.ht {

# deny all;

#}

# 静态资源

location ~* ^.+.(html|jpg|jpeg|gif|png|ico|css|js)$

{

root e:/gin/gin/;

expires 30d;

break;

}

location ~ ^/static/ {

root e:/gin/gin/;

expires 30d;

break;

}

location ~ ^/ {

# 指定 fastcgi 的主机和端口

fastcgi_pass 127.0.0.1:8051;

fastcgi_param PATH_INFO $fastcgi_script_name;

fastcgi_param REQUEST_METHOD $request_method;

fastcgi_param QUERY_STRING $query_string;

fastcgi_param CONTENT_TYPE $content_type;

fastcgi_param CONTENT_LENGTH $content_length;

fastcgi_param SERVER_PROTOCOL $server_protocol;

fastcgi_param SERVER_PORT $server_port;

fastcgi_param SERVER_NAME $server_name;

fastcgi_pass_header Authorization;

fastcgi_intercept_errors off;

}

}

# another virtual host using mix of IP-, name-, and port-based configuration

#

#server {

# listen 8000;

# listen somename:8080;

# server_name somename alias another.alias;

# location / {

# root html;

# index index.html index.htm;

# }

#}

# HTTPS server

#

#server {

# listen 443;

# server_name localhost;

# ssl on;

# ssl_certificate cert.pem;

# ssl_certificate_key cert.key;

# ssl_session_timeout 5m;

# ssl_protocols SSLv2 SSLv3 TLSv1;

# ssl_ciphers HIGH:!aNULL:!MD5;

# ssl_prefer_server_ciphers on;

# location / {

# root html;

# index index.html index.htm;

# }

#}

}

  需要注意的是,对于不需要url rewrite的目录,比如存放css和图片的目录,需要在配置文件里指明,否则将无法访问这些文件

  ?


1

2

3

4

5

location ~ ^/static/ {

root e:/gin/gin/;

expires 30d;

break;

}

  最后一步就是运行nginx服务器,并且用FastCGI运行你的Django项目了

  进入nginx的目录:

  ?


1

2

cd c:nginx

start nginx

  然后在浏览器里访问http://loaclhost/ 就应该可以看到nginx的欢迎界面了。最后进入你的Django项目的根目录,然后用一下命令来运行服务器:

  ?


1

python manage.py runfcgi method=threaded host=127.0.0.1 port=8051

  刷新localhost页面,你就能看到你的项目主页啦~~

  补充一点windwos下nginx操作的命令(来自官方文档)

  ?


1

2

3

4

nginx -s stop quick exit

nginx -s quit graceful quit

nginx -s reload changing configuration, starting a new worker, quitting an old worker gracefully

nginx -s reopen reopening log files

  大功告成,开始django之旅,ohye!!!

(0)

相关推荐

  • windows系统下通过设置权限来管理公用电脑的方法分享

    如何通过设置权限来管理公用电脑?本文将跟大家分享个学校的实例操作:由于学校师资紧张,笔者在担任网络管理员的同时还管理着文印室的办公电脑。由于平时工作比较忙,对文印室的办公电脑管理很松散,因此老师们可以 ...

  • Windows系统下将U盘修改为本地磁盘的方法

    之前大家一直在反映一个问题,就是为什么自己的笔记本为什么越来越卡呢?也没有使用很长的时间,但是就是运行速度很慢.其实我们在使用中,很难及时的删除一些没用的系统文件,这样就累积在C盘中,所以导致电脑的速 ...

  • window7系统下配置IIS搭建web服务器的步骤

    window7系统下配置IIS搭建web服务器的步骤 IIS全名Internet Information Services(IIS,互联网信息服务),在之前的在Windows 2000、Windows ...

  • Windows系统下XAMPP的安装配置图文教程

    这是关于在windows下XAMPP的安装配置图文教程,XAMPP 是什么?在linux ubuntu系统下安装配置LAMP时提到了XAMPP,XAMPP为我们提供了一种在Linux、Solaris、 ...

  • 在Windows系统下怎么部署PHP网站运行环境?

    这篇教程是向脚本之家的朋友介绍在Windows系统下怎么部署PHP网站运行环境方法,教程真的很不错,适合PHP网站技术开发人员,推荐过来,一起来学习吧! 开源意味着Bug会暴露给所有人,也会促进悟空C ...

  • Windows系统下Tab键的灵活使用

    Tab键是TALBE(表格)的缩写,也叫制表定位键,可能你觉得它只有在编辑文档时才会派上用场。其实不然,在 Windows 系统下Tab键在很多时候都可以作为提升效率的帮手,下面我们就来来看看Tab键 ...

  • 在Windows系统下怎样查找iPad ECID码

    有时候我们会用到iPad的ECID码但是很多人都不知道在哪里可以找到,下面就介绍大家在Windows系统下查找的方法 步骤 1 在此之前让你的iPad进入恢复模式,并且用数据线连接到电脑,按照下面教程 ...

  • 在Windows系统下制作一个完美的黑苹果U盘启动盘

    什么是黑苹果?就是不用苹果机子,在Windows系统就能安装苹果系统,下面小编要为大家介绍一下,在Windows系统下如何制作一个完美的黑苹果U盘启动盘,有兴趣的用户可以一起来尝试下。 一、准备工具 ...

  • 在windows系统下IE浏览器设置上网密码的方法

    我们在使用IE浏览器收藏一些自己经常使用的网站或者论坛等,在收藏的时候也会保存登陆的账号,如果有人用您的电脑就会被使用,所以我们就为浏览器上把锁。让您的隐私更加安全! 在windows系统下IE浏览器 ...