请选择 进入手机版 | 继续访问电脑版

技术控

    今日:0| 主题:61300
收藏本版 (1)
最新软件应用技术尽在掌握

[其他] windows下配置nginx和php环境(wnmp)

[复制链接]
生活如此心酸 发表于 2016-11-27 13:42:38
166 2
1.准备
    创建安装目录D:/web,我们所有的文件都会放在这个目录下
        下载nginx最新版  
  下载php:    php-5.4.16-Win32-VC9-x86.zip  
    2.下载完成会后获得如下文件,解压缩并重命名文件夹去掉版本号
    php-5.4.16-Win32-VC9-x86.zip
    nginx-1.10.2.zip
        3.配置nginx
nginx不需要额外的配置,直接运行就可以,打开命令行cmd切换到    d:/web/nginx   
    输入      start nginx后回车即可启动   
    浏览器中访问http://localhost/可以看到欢迎页面表示安装成功
    具体可以      参考windows下安装nginx   
      3.配置php
    在php的目录下可以找到php.ini-development文件,复制一份并将文件名修改为php.ini。然后修改配置文件内容
    ; extension_dir = "ext" ,删除前面的分号并修改为:extension_dir = "D:/web/php/ext"
    ;cgi.force_redirect = 1,删除前面的分号:cgi.force_redirect = 1
    ;cgi.fix_pathinfo=1,删除前面的分号:cgi.fix_pathinfo=1
    ;cgi.rfc2616_headers = 0,删除前面的分号:cgi.rfc2616_headers = 1
    命令行下输入如下命令启动php,不报错表示启动成功。
  1. D:/web/php>php-cgi.exe -b 127.0.0.1:9000 -c D:/web/php/php.ini
复制代码
   4.检查nginx、php是否安装成功
    在D:/web/nginx/html下新建一个phpinfo.php,加入如下内容后保存
   
  1. <?php phpinfo();?>
复制代码
修改nginx.conf 增加server,也就是虚拟服务器
  1. server {
  2.     listen      80;
  3.     server_name  www.yourdomain.com$;
  4.     root  html/yourdomain;
  5.     index  index.htmlindex.php;
  6.  
  7.  
  8.  
  9.     fastcgi_intercept_errorson;
  10.     location / {
  11.  
  12.             try_files $uri $uri/ =404;
  13.     }
  14.  
  15.  
  16.     location = /50x.html {
  17.         root  html;
  18.     }
  19.  
  20.     location ~ .php$ {
  21.         #try_files  $uri =404;
  22.         fastcgi_pass  127.0.0.1:9000;
  23.         #fastcgi_index  index.php;
  24.         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
  25.         fastcgi_param  domain $subdomain;
  26.         include        fastcgi_params;
  27.     }
  28.  
  29.     location ~ /.ht {
  30.         deny  all;
  31.     }
  32. }
复制代码
   重启nginx
    打开浏览器访问http://localhost/phpinfo.php
    能看到php信息表示安装成功。
      4.安装mysql
    这个步骤根其它环境无特殊不同,如果安装过可以直接使用,未安装的可以根据mysql安装向导下一步即可。
    最终安装之后的目录结构
  1. www
  2. ├── RunHiddenConsole.exe
  3. ├── nginx
  4. │   ├── conf
  5. │   ├── contrib
  6. │   ├── docs
  7. │   ├── html
  8. │   ├── logs
  9. │   ├── nginx.exe
  10. │   └── temp
  11. ├── php
  12. │   ├── dev
  13. │   ├── ext
  14. │   ├── extras
  15. │   ├── glib-2.dll
  16. │   ├── gmodule-2.dll
  17. │   ├── icudt.dll
  18. │   ├── icudt46.dll
  19. │   ├── icuin.dll
  20. │   ├── icuin46.dll
  21. │   ├── icuio.dll
  22. │   ├── icuio46.dll
  23. │   ├── icule.dll
  24. │   ├── icule46.dll
  25. │   ├── iculx.dll
  26. │   ├── iculx46.dll
  27. │   ├── icutest.dll
  28. │   ├── icutest46.dll
  29. │   ├── icutu.dll
  30. │   ├── icutu46.dll
  31. │   ├── icuuc.dll
  32. │   ├── icuuc46.dll
  33. │   ├── install.txt
  34. │   ├── libeay32.dll
  35. │   ├── libenchant.dll
  36. │   ├── libenchant_ispell.dll
  37. │   ├── libenchant_myspell.dll
  38. │   ├── libpq.dll
  39. │   ├── libsasl.dll
  40. │   ├── license.txt
  41. │   ├── news.txt
  42. │   ├── phar.phar.bat
  43. │   ├── pharcommand.phar
  44. │   ├── php-cgi.exe
  45. │   ├── php-win.exe
  46. │   ├── php.exe
  47. │   ├── php.gif
  48. │   ├── php.ini
  49. │   ├── php.ini-development
  50. │   ├── php.ini-production
  51. │   ├── php5apache2_2.dll
  52. │   ├── php5apache2_2_filter.dll
  53. │   ├── php5apache2_3.dll
  54. │   ├── php5nsapi.dll
  55. │   ├── php5ts.dll
  56. │   ├── pws-php5cgi.reg
  57. │   ├── pws-php5isapi.reg
  58. │   ├── readme-redist-bins.txt
  59. │   ├── snapshot.txt
  60. │   └── ssleay32.dll
  61. ├── readme.txt
  62. ├── start.bat
  63. ├── stop.bat
复制代码
   附:nginx和php的快速启动和关闭脚本
    启动脚本
   
  1. @echooff
  2. setphp_home=D:webwwwphp
  3. setnginx_home=D:webwwwnginx
  4.  
  5. REMWindows 下无效
  6. REMsetPHP_FCGI_CHILDREN=5
  7.  
  8. REM 每个进程处理的最大请求数,或设置为 Windows 环境变量
  9. setPHP_FCGI_MAX_REQUESTS=1000
  10.  
  11. echoStartingPHPFastCGI...
  12. RunHiddenConsole %php_home%/php-cgi.exe -b 127.0.0.1:9000 -c %php_home%/php.ini
  13. echoStartingnginx...
  14. RunHiddenConsole %nginx_home%/nginx.exe -p %nginx_home%
复制代码
关闭脚本
  1. @echooff
  2. echoStoppingnginx...  
  3. taskkill /F /IMnginx.exe > nul
  4. echoStoppingPHPFastCGI...
  5. taskkill /F /IMphp-cgi.exe > nul
  6. exit
复制代码
   遇到的问题:
    如果遇到提示php不是有效的win32程序,是因为安装的微软运行时库不对2003需要使用vc9版本的php
红尘醉一宵 发表于 2016-12-2 06:12:27
垃圾内容,路过为证。
回复 支持 反对

使用道具 举报

梦转千遍如若初见 发表于 2016-12-5 16:37:13
传说中的沙发???哇卡卡
回复 支持 反对

使用道具 举报

我要投稿

回页顶回复上一篇下一篇回列表
手机版/c.CoLaBug.com ( 粤ICP备05003221号 | 文网文[2010]257号 | 粤公网安备 44010402000842号 )

© 2001-2017 Comsenz Inc.

返回顶部 返回列表