windows下搭建nginx+php开发环境

1.前言

  windows下大多我们都是下载使用集成环境,但是本地已经存在一个集成环境,但不适合项目的需求。因此准备再自己搭建一个环境。

2.准备

  工具:

    下载 nginx1.14.0(版本根据自己需要下载,本教程使用1.14.0版本)

  

     下载 PHP7.2.11(版本根据自己需要下载,本教程使用7.2.11版本)

     下载 RunHiddenConsole 链接:https://pan.baidu.com/s/1gHDrQBqDUFZH4uESNV9aXQ 密码:oq9a

3.安装

  (1)解压安装php和nginx

    解压安装在指定文件夹。
    

  (2)配置php

    进入php文件夹,找到php.ini-development配置文件并copy一份重命名为php.ini。

    双击打开php.ini配置文件

    搜索extension_dir找到配置项,把该配置项设置成php目录下ext的绝对路径(最好是绝对路径,也可以是相对路  径"./ext"),如图:

    

    ps:左边的;号要删除,该分号作用是注释,即分号后面的内容不参与执行,仅仅是备注。

    

    搜索cgi.fix_pathinfo找到配置项,取消注释并把该配置项设置成1。

     

    cgi.fix_pathinfo是用来设置在cgi模式下PHP是否提供PATH_INFO信息。

    因为nginx默认不会设置PATH_INFO的值,所以需要通过上面的方法来提供。

   

    ps:暂时开启这两个就可以执行了,其他配置项根据自己需求开启,不一一说明

  (3)配置nginx

    打开nginx文件夹,conf里面的nginx.conf配置文件

    主要修改以下地方:

    

  1. server {
  2. listen ; //端口号(默认80,因已存在一个集成环境造成冲突,改成81),根据自己需要修改
  3. server_name test.com; //喜欢什么写什么(记得在host文件上加上该域名)
  4.  
  5. #charset koi8-r;
  6.  
  7. #access_log logs/host.access.log main;
  8.  
  9. location / {
  10. root E:\self\www; //修改成自己网站根目录的绝对路径(自己喜欢)
  11. index index.html index.htm;
  12. }
  13.  
  14. #error_page /.html;
  15.  
  16. # redirect server error pages to the static page /50x.html
  17. #
  18. error_page /50x.html;
  19. location = /50x.html {
  20. root html;
  21. }
  22.  
  23. # proxy the PHP scripts to Apache listening on 127.0.0.1:
  24. #
  25. #location ~ \.php$ {
  26. # proxy_pass http://127.0.0.1;
  27. #}
  28.  
  29. # pass the PHP scripts to FastCGI server listening on 127.0.0.1:
  30. # 把这几个前面的注释#符号删掉
  1.      location ~ \.php$ {
  2.  
  3.        #网站根目录(跟上面那个一样)

         root E:/self/www;

        #php-cgi监听端口号(默认9000,根据实际情况自己修改)

        fastcgi_pass 127.0.0.1:9001;   
        fastcgi_index index.php;

        #下面这里要改看清楚原本是/script$fastcgi_script_name,改成$document_root$fastcgi_script_name;

        #$document_root其实就是上面的root,可以直接改成绝对路径E:/self/www$fastcgi_script_name这样子,你喜欢

        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  
        include fastcgi_params;
      }

  ps:如果你直接复制上面的请把 我写的注释删掉,怕影响了代码。以下是我的配置图:

  

  (4)开启nginx和php-cgi

    开启nginx:打开cmd命令提示符输入命令,start nginx。(自己配置全局变量)

         或者进入到nginx目录下,输入命令 nginx.exe,开启nginx

          nginx.exe -s reload  重启

          nginx.exe -s quit   关闭

    开启php-cgi.exe

    E:\self\soft\php-7.2.11/php-cgi.exe -b 127.0.0.1:9001 -c E:\self\soft\php-7.2.11/php.ini

    就是php目录下的 php-cgi.exe和php-ini文件,加上绝对路径,端口号要跟nginx的对上!

    

    这样子就是正常滴,别人为它傻了,怎么没反应。

  (5)测试

     在你的网站根目录下创建一个phpinfo.php文件,里面编写  

  1.     <?php
  2.       phpinfo();

     然后保存。

     浏览器上输入你的域名和端口号(端口号80的话不需要填写,其他的一定要在域名后加上),加上PHP文件就能访问成功啦~

    

4.批处理文件

  

  这个窗口是不能关的,一旦管理,php-cgi就会关闭,就不能解析php文件。

  是不是很麻烦不能最小化,我们现在就来教你怎么解决。

  为了节省时间可以用批处理来打开/关闭Nginx和php-cgi,

  这里用到RunHiddenConsole(用来隐藏CMD命令窗),网上一搜大把,本文开头也给出了下载地址,下载后把RunHiddenConsole.exe和批处理文件放在同一级目录就行啦,是不用双击打开安装什么滴,别辣么傻,我傻就行了。

  编写批处理文件(.bat就是批处理文件,有兴趣学的可以学些)

  启动nginx和php-cgi批处理文件start.bat(文件名自己喜欢)

  start.bat

  1. @echo off
  2.  
  3. set PHP_FCGI_MAX_REQUESTS = 1000
  4.  
  5. echo Starting PHP FastCGI...
  6.  
  7. rem 下面这里的分别替换成你的php-cgi.exephp.ini的路径 ,后面的-b,-c等参数必须保留且注意前后空格
  8.  
  9. RunHiddenConsole E:\self\soft\php-7.2.11/php-cgi.exe -b 127.0.0.1:9001 -c E:\self\soft\php-7.2.11/php.ini
  10.  
  11. echo Starting nginx...
  12.  
  13. rem 注意替换成你的nginx目录
  14.  
  15. E:\self\soft\nginx-1.14.0/nginx.exe -p E:\self\soft\nginx-1.14.0/
  16.  
  17. cd D:/webServer/nginx-1.5.2/
  18.  
  19. pause

      关闭批处理文件 stop.bat

  1. @echo off
  2. echo Stopping nginx...
  3. taskkill /F /IM nginx.exe > nul
  4. echo Stopping PHP FastCGI...
  5. taskkill /F /IM php-cgi.exe > nul
  6. exit

  批处理文件双击就能运行。

如果有人发现,端口号对上了,但是浏览器访问php文件,只下载并没有解析,为什么会这样,明明百度了那么多教程,配置怎么看都没有问题?

  其实很简单,重启电脑!是的,就是重启电脑。重启nginx没有任何作用,别问我怎么知道,我当初就搞了很久,没想到真的是要重启电脑。

windows下搭建nginx+php开发环境的更多相关文章

  1. Windows下搭建Spark+Hadoop开发环境

    Windows下搭建Spark+Hadoop开发环境需要一些工具支持. 只需要确保您的电脑已装好Java环境,那么就可以开始了. 一. 准备工作 1. 下载Hadoop2.7.1版本(写Spark和H ...

  2. Windows下搭建objective C开发环境

    摘自:http://blog.csdn.net/zhanghefu/article/details/18320827 最近打算针对iPhone.iPod touch和iPad开发一些应用,所以,需要开 ...

  3. 【RN - 基础】之Windows下搭建React Native开发环境

    前言 React Native由Facebook公司于2015年F8大会上开源,其主张“Learn once, write everywhere”.React Native的核心设计理念是:既拥有Na ...

  4. Windows下搭建Android NDK开发环境及命令行编译

    首先说明本文内的相关安装操作参考<Pro Android C++ with the NDK>一书. 安装 Windows搭建Android NDK开发环境需要安装如下部分(同时需要配置对应 ...

  5. WINDOWS 下搭建 OC 集成开发环境

    Objective-C是苹果软件的编程语言,想要上机学习.调试,有一个集成开发环境(IDE)方便很多.有三类方法搭建Objective-C的集成开发环境: 1)   使用苹果的平台,集成开发环境使用X ...

  6. C++开发安卓、windows下搭建Android NDK开发环境

    1. NDK(Native Development Kit) 1.1 NDK简介 Android NDK是一套允许开发人员使用本地代码(如C/C++)进行Android APP功能开发的工具,通过这个 ...

  7. Windows下搭建ffmpeg+VS2008开发环境详细教程【转】

    本文转载自:http://www.voidcn.com/article/p-vxdntdgc-bkq.html 由于个人是从事音视频开发相关的工作,所以也把自己的一些过程写下来,方便大家以及自己查看, ...

  8. windows下搭建spark+python 开发环境

    有时候我们会在windows 下开发spark程序,测试程序运行情况,再部署到真实服务器中运行. 那么本文介绍如何在windows 环境中搭建简单的基于hadoop 的spark 环境. 我的wind ...

  9. Windows下搭建go语言开发环境 以及 开发IDE (附下载链接)

    1.下载 并且 安装 Go安装包   =========================================================== 在CSDN上传了我的版本,供大家下载: = ...

随机推荐

  1. 基于Spark GraphX计算二度关系

    关系计算问题描述 二度关系是指用户与用户通过关注者为桥梁发现到的关注者之间的关系.目前微博通过二度关系实现了潜在用户的推荐.用户的一度关系包含了关注.好友两种类型,二度关系则得到关注的关注.关注的好友 ...

  2. hdu 1397 (素数判定)

    一开始提交了这个,果断TLE #include <cstdio> #include <iostream> #include <string> #include &l ...

  3. [SHOI2007]园丁的烦恼

    裸的二维数点 #include"cstdio" #include"cstring" #include"iostream" #include& ...

  4. ActiveMQ的用途

    ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线. ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现. 消息队列的主要作用是为了 ...

  5. HTML5之新增的元素和废除的元素 (声明:内容节选自《HTML 5从入门到精通》)

    新增结构元素: section元素 section元素定义文档或应用程序中的一个区段,比如章节.页眉.页脚或文档中的其他部分.它可以与h1,h2,h3,h4,h5,h6元素结合起来使用,标示文档结构. ...

  6. bootstrap学习笔记细化(表格)

    主要属性: 全屏宽度带水平线的表格 .table 带边框的表格 .table-bordered 条纹状表格 .table-striped 悬停变色表格 .table-hover 紧凑风格表格 .tab ...

  7. vscode 实用的插件

    REST-Client api接口测试插件 在项目中新建以.http后缀名的文件即可. 右键使用 可以生产多种语言的请求代码块.可以说是非常舒服了. 使用代码块功能生成了node环境的http请求. ...

  8. Vue 框架-01- 入门篇 图文教程

    Vue 框架-01- 入门篇 图文教程 Vue 官网:https://cn.vuejs.org/ 关于 Vue 的基础大家可以在官网的[起步]去学习,本系列文章主要针对实例项目应用 一.Vue 的安装 ...

  9. 控制HTML页面内容不能选中的方法

    方法有二 一: css 方法 user-seletct: none;-webkit-user-seletct: none;-moz-user-seletct: none;-ms-user-seletc ...

  10. SQL点点滴滴_公用表表达式(CTE)递归的生成帮助数据

    本文的作者辛苦了,版权问题特声明本文出处:http://www.cnblogs.com/wy123/p/5960825.html 工作有时候会需要一些帮助数据,必须需要连续的数字,连续间隔的时间点,连 ...