• windows下配置nginx+php开发


    在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更多详细配置。 

    aliyun活动 https://www.aliyun.com/acts/limit-buy?userCode=re2o7acl
  • 相关阅读:
    好好的Timer居然有坑?
    你竟然用Integer作为synchronized的锁对象?
    是时候了解Java Socket底层实现了
    带你了解MyBatis一二级缓存
    Java利用反射排序
    用代码移动桌面图标(贪吃蛇)
    servlet上传文件+上传进度显示
    简书导航栏实现
    iPhone手机屏幕尺寸(分辨率)
    iOS深拷贝浅拷贝
  • 原文地址:https://www.cnblogs.com/wangbin/p/1913868.html
Copyright © 2020-2023  润新知