欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Windows下php+nginx环境搭建

程序员文章站 2022-05-17 18:41:11
...

场景说明:
在本地已有Apache+php环境下,为了便于学习nginx,所以在本地搭建nginx,并将项目切换到nginx环境下。所以本文就不介绍php的安装了,只介绍nginx安装以及从apache切换到nginx环境下。关于php搭建,可以参考:https://blog.csdn.net/qq_21386275/article/details/78271375

一、Nginx安装
1、下载
下载地址:http://nginx.org/en/download.html。如下图,下载稳定版本
Windows下php+nginx环境搭建
2、解压
解压到你安装nginx的目录下,本人是解压到与apache同级目录下。解压后目录如下。
Windows下php+nginx环境搭建
3、安装
双击nginx.exe或者命令行执行nginx,如下图:
Windows下php+nginx环境搭建
4、验证是否安装成功
在浏览器中输入localhost,出现如下页面,表示访问成功
Windows下php+nginx环境搭建
5、遇到的问题
① 由于本地是有apache的,所以可能会存在80端口被占用的情况(一般是apache,需要先干掉其进程)。当命令行执行出现10013错误时,说明是80端口被占用了。
解决方案1:
步骤1
netstat -aon|findstr "80" //查看占用80端口的进程
Windows下php+nginx环境搭建
步骤2

 tasklist|findstr "9924"  //根据上边查出来的9924端口,查看端口对应的服务名称

Windows下php+nginx环境搭建
步骤3
在任务管理器里边结束该进程。

解决方法2:
上述方法不行的话,直接在nginx配置中修改其监控的端口,然后重新启动。在访问路径上要加上81端口,localhost:81
Windows下php+nginx环境搭建

二、修改nginx,php.ini配置,使本地项目在nginx环境下运行
1、修改php.ini配置
将以下配置改成如下值,并将;符号去掉。

enable_dl = On
cgi.force_redirect = 0 
cgi.fix_pathinfo=1
fastcgi.impersonate = 1
cgi.rfc2616_headers = 1
extension_dir = "./ext"

,然后在cmd中执行如下指令:

php-cgi.exe -b 127.0.0.1:9000 -c D:\IdeMix442_jcp\php-5.5.27-Win32-VC11-x64\php.ini//后边路径切换成你本地php.ini文件路径

2,修改nginx.conf配置
主要是修改大概第35行的server配置,如下,其他未修改的配置未列出

server { 
        listen 80; 
        server_name benxiaohai.ren; #本地访问项目的域名

        location / {
            root   D:/benxiaohai/Source;#项目的地址
            index  index.html index.htm index.php;
            autoindex on; #开启网站目录文件列表功能,访问目录时列出其中的文件列表,默认不开启
        }

        location ~ \.php$ {
            root   D:/benxiaohai/Source;#项目的地址
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;#$document_root是root的值
            include        fastcgi_params;
        }
    }

3、添加hosts配置

127.0.0.1  benxiaohai.ren

4、然后你会在任务管理器中看到如下进程:
Windows下php+nginx环境搭建
5、访问本地项目:benxiaohai.ren
注意事项:在nginx.conf配置中的项目地址,不要使用“\”,容易出错(日志报The system cannot find the file specified),要是用“/”,因为“\”可能会被转义,例如转义成换行等。

三、nginx虚拟主机配置
按照步骤二中修改nginx.conf配置,复制一份server配置,然后添加你的hosts

server{
 ...
}
server{
 ...
}
127.0.0.1  你的域名 #例如127.0.0.1  benxiaohai.ren
相关标签: nginx php