关于php的搭建,此前在《【php】本地开发环境的部署与helloworld》(https://blog.csdn.net/yongh701/article/details/41789753)和《【php】在Windows2003下配置Apache2.4与php5.4》(https://blog.csdn.net/yongh701/article/details/47080057)都有说起到。一种是傻瓜式的安装包,一种是在apache服务器上是搭建php。php也能够直接利用Windows的iis服务器进行搭建,具体见《【php】在Windows2003下的IIS配置php5.4》(https://blog.csdn.net/yongh701/article/details/47083231)。惋惜这都是不太主流的php搭配方式。如今,应该说是老早以前,大部分比较专业的网站都已经用nginx去搭载php了。下面就直接用一个例子来讲明如何在windows下如何用nginx去配置php。php
1、nginx和php的下载java
在下载nginx和php以前,先到微软的官网(https://www.microsoft.com/en-us/download/details.aspx?id=48145)将vc15安装了。要注意的是,你的电脑是32位系统仍是64位系统,是哪一个就安装哪一个,我这的windows是64位的,因此这里我下载了x64的。mysql
下载以后,获得的vc_redist.x64.exe是一个连安装目录都不用你选,你也不该该选的一键傻瓜安装文件。php7须要vc15运行库才能运行,这也就是为什么win200三、winxp只支持到php5.4的缘由,由于php5.4开始就要vc9了,windows200三、xp只能支持到vc8了。linux
而后去下载nginx,其实nginx是个和iis、apache同样,也就tomcat那意思的玩意。咱们首先要到他的官网(http://nginx.org/)下载nginx。进去以后选择download,找到windows的稳定版。下载以后获得了一个叫nginx-1.14.0.zip的东西。nginx
以后再去php的官网(http://www.php.net/),下载最新的php7。这里是不是线程安全因为咱们不是用iis版原本配php,因此没所谓。不过要注意的是,你的电脑是32位系统仍是64位系统,我这的windows是64位的,因此这里我下载了x64的php。下载以后获得了一个叫php-7.2.5-Win32-VC15-x64.zip的东西。redis
2、nginx和php的配置sql
一、下载以后建议新建个文件夹,这里,我叫PHP。这里须要注意的是,尽量将这个文件夹放到一个没有空格路径的地方——虽然说即便有空格,大部分系统也就是在配置文件加个双引号的事,但有小部分系统就是不认,尤为原生在linux的nginx,你在windows配,对于路径上的空格,在认知上就是不知会有些什么事情,因此避免不知名的麻烦,仍是尽量避免路径有英文。将nginx-1.14.0.zip和php-7.2.5-Win32-VC15-x64.zip分别解压到这里。再本身新建个文件夹叫WWW,这里之后将是咱们存放php网站的地方。如图。数据库
再下载个1K大小的RunHiddenConsole(http://redmine.lighttpd.net/attachments/660/RunHiddenConsole.zip),这是个帮助你一次性启动两个要挂载在命令行的程序玩意,用于将来同时启动nginx和php。如图点击下载。apache
解压RunHiddenConsole,建议放到和php、nginx相同的目录。c:\php此时的目录结构以下图所示:windows
二、打开.\PHP\nginx-1.14.0\conf中的nginx.conf,这也是nginx的配置文件。
(1)首先将第39的编码charset前的#去掉,并改为utf-8编码。也就是改为charset "utf-8";
(2)再将65~71行前的#统统去掉,修改第44行和66行的root,参数修改为咱们刚才新建的,未来要用来放网站的目录路径,路径记得要用双引号“”括着。第69行的fastcgi_param,改为SCRIPT_FILENAME "用来放网站的目录路径"$fastcgi_script_name;。我这里就是"C:\PHP\WWW";。
(3)以后,将第45行的index和第68行的fastcgi_index,改为index.php。
以下图所示,改完以后,保存退出。这样,nginx就设置完了。
三、接下来再设置php,几乎和以前的php设置同样了。
(1)将php.ini-development复制一份并更名成php.ini。以后用记事本,最好用notepad之类的打开。
(2)搜索“extension_dir”,找到:extension_dir = "ext" 先去前面的分号再改成 extension_dir = "你的php目录/ext",我这里是extension_dir = "C:/PHP/php-7.2.5-Win32-VC15-x64/ext"。
搜索“enable_dl”,找到:enable_dl = Off 改成 enable_dl = On
搜索“cgi.force_redirect”,将cgi.force_redirect = 1 先去前面的分号再改成 cgi.force_redirect = 0
搜索“date.timezone”,找到:;date.timezone = ,先去前面的分号再改成 date.timezone = Asia/Shanghai
搜索“fastcgi.impersonate”,找到: ;fastcgi.impersonate = 1 ,去掉前面的分号
搜索“cgi.rfc2616_headers”,找到:;cgi.rfc2616_headers = 0 ,先去前面的分号再改成 cgi.rfc2616_headers = 1
以后找到:;extension=pdo_mysql和;extension=mysqli,去掉前面的分号“;”,用于支持MYSQL数据库。Mysql数据库这里我就再也不赘述了,详见《【Mysql】Mysql的安装、部署与图形化》(https://blog.csdn.net/yongh701/article/details/42648763)。这里的extension,之后根据你的php需求能够再本身去掉相应的分号;打开。
至此,php的配置完毕。
在刚才咱们自行建立的WWW文件夹,新建一个utf-8编码的index.php,内容就是经典的:
<?php phpinfo(); ?>
四、由于nginx和php须要经过命令行来启动,下面还要在windows系统配置命令行。
先将system32这个文件夹加入到系统变量再说,省得一下子有些命令提示:“不是内部命令”。具体和配java配php同样了。“计算机”右键,属性->高级系统设置->高级->环境变量,在下方的系统变量中找到Path->编辑,在原有的路径上加个分号,添加上C:\Windows\System32。一路“肯定”便可。
以后,在RunHiddenConsole同目录,写个start.bat。具体以下:
:设置php和nginx的路径 set php_home=C:\PHP\php-7.2.5-Win32-VC15-x64 set nginx_home=C:\PHP\nginx-1.14.0\ :启动php和nginx RunHiddenConsole %nginx_home%\nginx.exe -p %nginx_home% RunHiddenConsole %php_home%\php-cgi.exe -b 127.0.0.1:9000 -c %php_home%\php.ini
而后再写一个stop.bat:
taskkill /F /IM nginx.exe > nul taskkill /F /IM php-cgi.exe > nul exit
之后就能用start.bat启动你的php网站,用stop.bat来关闭。
到此大功告成,最后点击start.bat,打开一个浏览器,输入http://localhost或者127.0.0.1,你就会见到以下的php.info页面,证实布置完成!