查看: 7486|回复: 0
打印 上一主题 下一主题

windows下配置nginx+php开发

[复制链接]
跳转到指定楼层
1#
发表于 2012-6-27 09:45:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
台州网址导航
在php开发当中,最常用的环境莫过于在LAMP:linux+apache+mysql+php了,在windows下有WAMP:windows+apache+mysql+php和iis+mysql+php。这些的配置我这里不做说明,留在下次说明,其实我本人也是在上述环境下开发。今天我我看了一个大家都说世界上运行最快的,站资源很少的服务器:nginx(engine x的简称)。我这里要讲的是windows下配置nginx+php+mysql的环境。

    这个环境我个人也是使用了下,原理是采用cgi来运行的。大家都知道,php在apache下面有两种运行方式,一种是以模块形式运行,一种是cgi形式(不过这里的cgi和传统不太相同,这里使用的是fast-cgi方式。它比传统cgi运行速度快,资源消耗小)。下面就说下nginx的配置吧。这里的前提是php 和 mysql都已经配置好了(如果不会的,请到到谷歌,百度上查询)。

      nginx常见有linux下和windows下的。而windows下的是Kevin Worthington利用Cygwin编译的nginx的32bit windows版:Nginx For Windows开发版或是稳定版,下载地址是:http://www.kevinworthington.com/nginx-for-windows/。还有个windows版:nginx/Windows开发版或是稳定版,下载地址是:http://nginx.org/,这里下载。我个试了下,这两个区别一个点击安装,一个不用安装。为什么搞两个地址,我也不知道。我们下载下来,不管是安装的还是非安装的都要配置nginx下conf下的nginx.conf文件。


1.#一下是我把那个文件全部贴出来,然后把我修改过的地方标注   
2.  
3.  
4.#user  nobody;   
5.worker_processes  1;   
6.  
7.#error_log  logs/error.log;   
8.#error_log  logs/error.log  notice;   
9.#error_log  logs/error.log  info;   
10.  
11.#pid        logs/nginx.pid;   
12.  
13.  
14.events {   
15.    worker_connections  1024;   
16.}   
17.  
18.  
19.http {   
20.    include       mime.types;   
21.    default_type  application/octet-stream;   
22.  
23.    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '  
24.    #                  '$status $body_bytes_sent "$http_referer" '  
25.    #                  '"$http_user_agent" "$http_x_forwarded_for"';   
26.  
27.    #access_log  logs/access.log  main;   
28.  
29.    sendfile        on;   
30.    #tcp_nopush     on;   
31.  
32.    #keepalive_timeout  0;   
33.    keepalive_timeout  65;   
34.  
35.    #gzip  on;   
36.  
37.    server {   
38.        listen       80;  #服务器监听的端口,http请求的端口   
39.        server_name  localhost;  #服务器地址   
40.  
41.        charset gbk;  #服务处理的编码   
42.  
43.        #access_log  logs/host.access.log  main;   
44.  
45.        location / {   
46.            root   E:\www;  #网站的更目录,也可以写成 E:/www   
47.            index  index.html index.htm;   #网站的默认网页文件   
48.        autoindex on;  #当网站没有默认文件时,打开域名可以看到文件目录结构   
49.        }   
50.  
51.        #error_page  404              /404.html;   
52.  
53.        # redirect server error pages to the static page /50x.html   
54.        #   
55.        error_page   500 502 503 504  /50x.html;   
56.        location = /50x.html {   
57.            root   html;   
58.        }   
59.  
60.        # proxy the PHP scripts to Apache listening on 127.0.0.1:80   
61.        #   
62.        #location ~ \.php$ {   
63.        #    proxy_pass   http://127.0.0.1;   
64.        #}   
65.  
66.        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000   
67.        #  这里是重点啦,要小心一下要把文件解注释掉   
68.        location ~ \.php$ {     
69.        #    root           html;  #这行不要接注释   
70.            fastcgi_pass   127.0.0.1:9000;  #fast-cgi也就是php-cgi监听地址和端口   
71.            fastcgi_index  index.php;   
72.            fastcgi_param  SCRIPT_FILENAME  E:\www$fastcgi_script_name;  #这里要特别注意,把网站的根目录直接替换掉 /scripts 就可以,这里也可以写成 E:/www 。   
73.            include        fastcgi_params;   
74.        }   
75.  
76.        # deny access to .htaccess files, if Apache's document root   
77.        # concurs with nginx's one   
78.        #   
79.        #location ~ /\.ht {   
80.        #    deny  all;   
81.        #}   
82.    }   
83.  
84.  
85.    # another virtual host using mix of IP-, name-, and port-based configuration   
86.    #   
87.    #server {   
88.    #    listen       8000;   
89.    #    listen       somename:8080;   
90.    #    server_name  somename  alias  another.alias;   
91.  
92.    #    location / {   
93.    #        root   html;   
94.    #        index  index.html index.htm;   
95.    #    }   
96.    #}   
97.  
98.  
99.    # HTTPS server   
100.    #   
101.    #server {   
102.    #    listen       443;   
103.    #    server_name  localhost;   
104.  
105.    #    ssl                  on;   
106.    #    ssl_certificate      cert.pem;   
107.    #    ssl_certificate_key  cert.key;   
108.  
109.    #    ssl_session_timeout  5m;   
110.  
111.    #    ssl_protocols  SSLv2 SSLv3 TLSv1;   
112.    #    ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;   
113.    #    ssl_prefer_server_ciphers   on;   
114.  
115.    #    location / {   
116.    #        root   html;   
117.    #        index  index.html index.htm;   
118.    #    }   
119.    #}   
120.  
121.}  

到了这里我们就配置好了。我们开两个命令窗口,一个运行nginx.exe 和 php-cgi.exe 文件。

我的nginx在D盘下,运行命令是:D:\nginx-0.7.61>nginx.exe

我的php也在D盘下,运行名利是:D:\php5.2.6>php-cgi.exe -b 127.0.0.1:9000 ,这里的127.0.0.1:9000就是我们在nginx.conf文件中配置的那个,端口号一定要相同哦。
这个两个运行顺序无关。

     好啦,到了这里我们就在 E:\WWW 目录下放一张info.php文件,在地址栏里面输入http://localhost/info.php ,呵呵,是不是成功啦。下次介绍php更多详细配置。


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖
台州维博网络(www.tzweb.com)专门运用PHP+MYSQL/ASP.NET+MSSQL技术开发网站门户平台系统等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

网站推广
关于我们
  • 台州维博网络(Tzweb.com)拥有多年开发网站平台系统门户手机客户端等业务的成功经验。主要从事:企业网站建设、网站程序开发、手机APP客户端、平面设计、主机域名、虚拟空间、网站推广、网站优化、后期维护等服务,满足不同企业公司的需求,是台州地区领先的网络技术服务商!

Hi,扫描关注我

Copyright © 2005-2024 站长论坛 All rights reserved

Powered by 站长论坛 with TZWEB Update Techonolgy Support

快速回复 返回顶部 返回列表