Windows 上搭建Nginx+FastCGI+PHP7 并将其注册为服务

1.首先是下载软件。

Nginx官网下载:http://nginx.org/en/download.html

PHP7版本下载地址:http://windows.php.net/download/

Mysql5.7版本下载地址:http://www.mysql.com/downloads/mysql/

2.安装mysql软件。

测试能否运行

3.解压Nginx和php到你自己安装位置。这里我在D盘新建一个文件夹:wnmp(windows,ngnix,mysql,php),把下面的软件安装到这个文件夹里面。

Nginx目录E:\wnmp\nginx

PHP目录E:\wnmp\php

第二部分:安装nginx

1.打开E:\wnmp\nginx目录,运行该文件夹下的nginx.exe

2.测试是否启动nginx。打开浏览器访问http://localhost 或 http://127.0.0.1,看看是否出现“Welcome to nginx!”,出现的证明已经启动成功了。没有启动的话,看看80端口有占用没。

注意:该网站的默认目录在“E:\wnmp\nginx\htm”l下

第三部分:安装php(这里主要讲nginx配置启动php,以cgi运行php)

nginx配置文件是conf文件夹里的nginx.conf

1.修改

            location /{
            root   html;
            index  index.html index.htm;
            }

修改网站文件的路径,以及添加index.php的默认页。

        location / {
            root   E:/wnmp/www/html;
            index  index.html index.htm inde.php;
        }

2.支持php的设置

修改

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

先将前面的“#”去掉,同样将root  html;改为root  E:/wnmp/www/html;。再把“/scripts”改为“$document_root”,这里的“$document_root”就是指前面“root”所指的站点路径,这是改完后的:

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            root           E:/wnmp/www/html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

3.E:\wnmp\php\下修改php.ini-development文件,将文件名修改为php.ini,打开php配置文件php.ini,保存即可。

搜索“extension_dir”,找到: e;xtension_dir = "ext" 先去前面的分号再改为 extension_dir = "E:\wnmp\php\ext"

搜索“date.timezone”,找到:;date.timezone = 先去前面的分号再改为 date.timezone = Asia/Shanghai

搜索“enable_dl”,找到:enable_dl = Off 改为 enable_dl = On

搜索“cgi.force_redirect” ;cgi.force_redirect = 1 先去前面的分号再改为 cgi.force_redirect = 0

搜索“fastcgi.impersonate”,找到: ;fastcgi.impersonate = 1 去掉前面的分号

搜索“php_mysql”,找到:”extension=php_mysql.dll和extension=php_mysqli.dll  去掉前面的“;”extension=php_mysql.dll和extension=php_mysqli.dll   (支持MYSQL数据库)

其他的配置请按照自己的需求更改。

第三部分试运行以及编辑运行配置文件

E:\wnmp\php>php-cgi.exe -b 127.0.0.1:9000-c E:\wnmp\php\php.ini

重新运行nginx.exe。

E:\wnmp\www\html下新建一个phpinfo.php,

<?php phpinfo(); ?>

访问http://localhost/phpinfo.php

或者http://127.0.0.1/phpinfo.php

出现如下的信息就说明php已经成功安装:

下载一个RunHiddenConsole.exe

开启php-cgi和nginx.exe,保存为start.bat

@echo off
echo Starting PHP FastCGI...
E:\wnmp\nginx\RunHiddenConsole.exe E:\wnmp\php\php-cgi.exe -b 127.0.0.1:9000-c E:\wnmp\php\php.ini
echo Starting nginx...
E:\wnmp\nginx\RunHiddenConsole.exe E:/wnmp/nginx/nginx.exe -p E:/wnmp/nginx

停止php-cgi和nginx.exe,保存为stop.bat

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

获取应用程序 
脚本之家下载:arvany

用instsrv.exe安装srvany.exe 

将instsrv.exe和srvany.exe拷贝到"C:\WINDOWS\system32"目录下(如果是64bit系统,则将其拷贝到C:\WINDOWS\SysWOW64),用instsrv.exe安装srvany.exe,

进入dos界面: 

C:\windows\SysWOW64>C:\windows\SysWOW64\instsrv.exe Nginx C:\windows\SysWOW64\srvany.exe 

注:Nginx 是自定义的服务的名称,可以根据应用程序名称任意更改。 

打开注册表,定位到下面的路径。 
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Nginx (同样的Nginx 是你刚才安装服务时自定义的服务名称。) 
 如果该服务名下没有Parameters项目,则对服务名称项目右击新建项,名称为Parameters,然后定位到Parameters项,新建以下几个字符串值。 
名称 Application 值为你要作为服务运行的bat文件地址。 
名称 AppDirectory 值为你要作为服务运行的bat文件所在文件夹路径。 
名称 AppParameters 值为你要作为服务运行的bat文件启动所需要的参数。 

打开服务管理器,启动服务OK

猜你喜欢

转载自blog.csdn.net/NeptuneClouds/article/details/81429995