当前位置:首页 > 网站技术 > windows下配置NGINX+PHP+MYSQL

windows下配置NGINX+PHP+MYSQL

作者:星之宇 ┊ 时间:2012-11-3 10:25 ┊ 分类: 网站技术 ┊ 阅读:17291 ┊ 评论:8

相对于linux来说,windows配置web环境不管是一键安装包还是独立配置简单多了,这次是讲以NGINX作为web的本地的测试环境。

现在越来越多的网站使用以NGINX作为web服务器的环境了。想在windows xp模下安装NGINX作为本地测试环境,但是用一键安装包很多多是老的稳定的版本,所以想独立的配置NGINX-1.3.8、PHP-5.4.8 和 MYSQL-5.5.8的本地环境用作测试。主要讲把环境配置起来,像mysql安装什么过程我这里就略过了。


第一部分:准备工作。(windows xp sp3)

1.首先是下载软件。

NGINX-1.3.8官网下载:http://nginx.org/en/download.html

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

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

2.安装mysql软件。


3.解压NGINX和PHP到你自己安装位置。这里我多装在D盘。

NGINX目录D:\nginx

PHP目录D:\php


第二部分:安装nginx

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

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

注意:该网站目录在D:\nginx\html下

点击查看原图


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

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

1.修改大概第43~45行之间的


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

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


        location / {
            root   D:/www;
            index  index.html index.htm index.php;
        }
2.支持php的设置


修改大概在第63-71行的


        # 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   D:/www;。再把“/scripts”改为“$document_root”,这里的“$document_root”就是指前面“root”所指的站点路径,这是改完后的:

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


3.D:/php下复制php.ini-development文件,并将文件名改为php.ini,修改php配置文件php.ini,保存即可。

第730行 ; extension_dir = "ext" 先去前面的分号再改为 extension_dir = "D:\php\ext"

第919行 ;date.timezone = 先去前面的分号再改为 date.timezone = Asia/Shanghai

第736行enable_dl = Off 改为 enable_dl = On

第743行 ;cgi.force_redirect = 1 先去前面的分号再改为 cgi.force_redirect = 0

第771行 ;fastcgi.impersonate = 1 去掉前面的分号

第783行 ;cgi.rfc2616_headers = 0 先去前面的分号再改为 cgi.rfc2616_headers = 1


第880、881行,去掉前面的“;”extension=php_mysql.dll和extension=php_mysqli.dll   (支持MYSQL数据库)


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


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

D:\php>php-cgi.exe -b 127.0.0.1:9000 -c D:\php\php.ini
任务管理器先结束nginx.exe,在重新运行nginx.exe。


D:/www下新建一个index.php,

<?php phpinfo(); ?>

访问出现php的信息就说明php已经成功安装。


下载一个RunHiddenConsole.exe,百度网盘

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


@echo off
echo Starting PHP FastCGI...
D:\nginx\RunHiddenConsole.exe D:\PHP\php-cgi.exe -b 127.0.0.1:9000 -c D:\PHP\php.ini
echo Starting nginx...
D:\nginx\RunHiddenConsole.exe D:/nginx/nginx.exe -p D:/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


最后说一下,mysql就不用我说了吧。

目前有 8 条评论
avatar
wcc 2016-10-06 11:13回复6楼
多谢楼主,找了这么久就你的好用,太感谢了!!!
avatar
游客 2015-06-23 16:04回复5楼
跟Apache有什么不一样(以前用Apache,换这个要动什么)?怎么发布到外网?
avatar
星之宇 2015-06-23 18:29回复
@游客:nginx占用资源低,高并发下能保持低资源低消耗高性能,只要配置下nginx环境,关闭apache就可以了
avatar
jj 2014-12-19 15:10回复4楼
写的很详细,一下就配置好了
avatar
2014-03-16 15:42回复3楼
好吧 我懂了 感谢博主
avatar
2014-03-16 15:38回复2楼
D:\php>php-cgi.exe -b 127.0.0.1:9000 -c D:\php\php.ini
这啥意思啊?
avatar
design231 2012-11-21 10:57回复1楼
谢谢你的教程,我已安装成功。
其是PHP5.4.8没有php-cgi.exe文件,我从另外一个地方拷贝过来没成功,结果用的一个低版本php.
avatar
星之宇 2012-11-21 11:01回复
@design231:要从官网下载windows版本的php,下载那个VC9 x86 Non Thread Safe的zip包,里面肯定有php-cgi.exe这个文件。