windows下搭建nginx + php 开发环境的教程

一般来说在 windows 下配置开发环境,都喜欢用集成环境开发包。但如果要手动配置一个 nginx + php 的开发环境该如何做呢?今天这篇博文就来简单的介绍一下 windows 系统下手动安装 nginx + php 的开发环境的方法。

nginx 的安装

1、下载 nginx 安装包

nginx 安装包下载网址:http://nginx.org/en/download.html

图片[1]-windows下搭建nginx + php 开发环境的教程-淇云博客

2、安装 nginx

将下载的 nginx 安装包解压到合适的目录中,注意 nginx 所在的目录路径不能出现中文。

图片[2]-windows下搭建nginx + php 开发环境的教程-淇云博客

3、启动 nginx 服务

找到 nginx 目录下的 nginx.exe 双击,会闪现一下黑窗口,就表示启动成功了!

图片[3]-windows下搭建nginx + php 开发环境的教程-淇云博客

注:

(1)、由于 nginx 的默认端口是 80,如果发生启动失败的情况,修改一下 nginx 的端口即可,下面会有提到!

(2)、在 cmd 命令窗口中使用 start nginx 命令,也可以启动 nginx,不推荐这个方法,所以不再多介绍,下面有补充的说明

4、验证 nginx 是否启动成功

(1)、在系统的任务管理器中查看是否有 nginx 的服务进程

图片[4]-windows下搭建nginx + php 开发环境的教程-淇云博客

(2)、浏览器输入 http://localhost/ 是否打开如下的页面,如果你的端口改了,则要输入 http://localhost:81/ (这里的 81 为端口号)

图片[5]-windows下搭建nginx + php 开发环境的教程-淇云博客

php 的安装与配置

php 的下载与安装,请参考《windows 系统下 php 的安装与配置(apache)教程》这篇文章的“php 安装包下载与安装”与 “php 配置”部份,请忽略文章下半部份的‘apache 配置 php 扩展’。

想要在 nginx 中使用 php,除了需要参照上方给出的文章进行配置外,速需要对 php 配置文件 php.ini 做出如下的修改!

修改方法:

php.ini 搜索 “cgi.fix_pathinfo”,去掉 cgi.fix_pathinfo 前面的分号,并将其值改为 0,修改完成如下图所示!

图片[6]-windows下搭建nginx + php 开发环境的教程-淇云博客

作用:cgi.fix_pathinfo 是用来设置在 cgi 模式下 PHP 是否提供 PATH_INFO 信息,由于 nginx 默认不会设置 PATH_INFO 的值,所以需要通过上面的方法来提供。

配置 nginx

nginx 的配置文件在 conf 文件夹下的 nginx.conf 文件,打开它,并定位到其 server 部份。

简单的说一下里面的参数含义:

1、listen:定义虚拟主机的服务端口,

2、server_name:用来指定 IP 地址或域名,多个用空格分开。

3、index:用于设定访问的默认首页地址.。

4、root:指令用于指定虚拟主机的网页根目录,可以是相对或绝对路径,默认为 nginx 下的 html 目录

5、charset:用于设置网页的默认编码格式。

6、access_log:虚拟主机的访问日志存放路径,最后的 main 用于指定访问日志的输出格式。

nginx 配置修改 

1、修改网站的根目录,如下图,我这里是测试环境所以没有改,默认为 nginx 目录下的 html 文件夹

2、添加 index.php 默认索引文件,否则会发生输入目录形式的地址,无法访问 index.php 的情况

图片[7]-windows下搭建nginx + php 开发环境的教程-淇云博客

3、修改监听 php-cgi 的配置

图片[8]-windows下搭建nginx + php 开发环境的教程-淇云博客

(1)、去掉 php 配置模块中的 # 号,并将

fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

改为

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

并加一行

fastcgi_split_path_info  ^(.+\.php)(/.+)$;

注意:$document_root 表示上面的 root 中指出的目录

图片[9]-windows下搭建nginx + php 开发环境的教程-淇云博客

(2)、下面是我改好的代码

location ~ \.php$ {
    root           html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_split_path_info  ^(.+\.php)(/.+)$;
    fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
    include        fastcgi_params;
}

启动 nginx 与 php-cgi

我们这里是以在 cmd 命令提示符口以输入命令的方式来启动!

图片[10]-windows下搭建nginx + php 开发环境的教程-淇云博客

1、启动 nginx

cmd 命令进入到 nginx 的安装路径,输入以下命令来启动 nginx

start nginx

nginx.exe

2、启动 php-cgi.exe

启动命令

c:\php7.2\php-cgi.exe -b 127.0.0.1:9000 -c c:\php7.2\php.ini

注意:

(1)、c:\php7.2 为我本机 php 目录所在的位置,要改成自自己的!

(2)、这个命令窗口是不能关闭的,一旦关闭 php-cgi 也会被关闭!

测试 nginx + php 是否配置成功

(1)、在 nginx 配置的目录里放一个 php 文件,并命名为“text.php”,php 代码如下

<?php
echo phpinfo();

(2)、浏览器访问 http://localhost/text.php

图片[11]-windows下搭建nginx + php 开发环境的教程-淇云博客

出现以上的内容,则表示 nginx + php 配置成功,如果出现 text.php 被下载的情况,请重启一下电脑,nginx 有点傻!

补充一:bat 批处理快速启动 nginx 与 php-cgi

利用 RunHiddenConsole.exe 配合 bat 脚本可快速启动 nginx 与 php-cgi 以及快速的关闭它们!

RunHiddenConsole.exe 用来隐藏 cmd 命令窗,可以本文未进行下载。下载到本地后,将 RunHiddenConsole.exe 和批处理文件放到一个目录,不用去点击执行它!

启动 nginx 和 php-cgi 批处理文件代码:

注意:代码里的 nginx 与 php 的目录要换成自己的。

@echo off 
echo Starting Nginx... 
cd C:\nginx-1.18.0
start nginx
echo Starting PHP FastCGI... 
cd C:\php7.2
RunHiddenConsole.exe C:\php7.2\php-cgi.exe -b 127.0.0.1:9000 -c C:\php7.2\php.ini

关闭 nginx 与 php-cgi 批处理文件代码:

@echo off
echo Stopping nginx...  
taskkill /F /IM nginx.exe > nul
echo Stopping PHP FastCGI...
taskkill /F /IM php-cgi.exe > nul
exit

补充二:nginx 部份管理命令

1、启动命令

start nginx

nginx.exe

2、关闭命令

nginx -s quit

3、重启命令

nginx -s reload

4、查看版本号

nginx -v

5、检查配置文件

nginx -t

[c-downbtn type=”lz” url=”https://qiyunboke.lanzoui.com/i0gfFrt1kfc” pwd=””]RunHiddenConsole.exe 下载[/c-downbtn]

温馨提示:本文最后更新于2021-07-24 19:18:14,某些文章具有时效性,若有错误或已失效,请在下方留言或联系博主

感谢来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
赞赏
评论 抢沙发
pengqi的头像-淇云博客

昵称

取消
昵称表情代码图片