前言

最近公司有个PHP项目需要开发维护,之前一直都是跟着巨硬混的,现在要接触PHP项目。学习一门新语言之前,先搭建好环境吧,鉴于公司项目是基于php 7.1.33 版本的,所以以下我使用的都是基于这个版本的。

下载安装包

  1. Nginx 下载 http://nginx.org/en/download.html, 直接下载你想要的版本即可,我下载的是nginx-1.21.6 版本。
  2. PHP 下载 https://windows.php.net/downloads/releases/archives/ 选择你喜欢的版本即可

安装和配置

  1. 先将下载后的文件进行解压缩,如图



  2. 修改Nginx 配置文件,进入D:\Nginx\nginx\nginx\conf 文件夹找到 nginx.conf

先修改location

location / {
root D:/WWW/PHP;
index index.html index.htm;
}

注意:D:/WWW/PHP 是我本地新建的文件夹,用于存放站点文件,你可以在自己电脑任意位置新建。

然后继续找到location ~ .php$

        location ~ \.php$ {
root D:/WWW/PHP;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}

3.额外注意,如果你本地80端口已经被占用,请修改Nginx 默认端口

    server {
listen 8080;
server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / {
root D:/WWW/PHP;
index index.html index.htm;
}

另外需要在D:/WWW/PHP 文件夹里面新建一个index.php 文件。同时可把Nginx html 文件夹下index.html 复制到D:/WWW/PHP 中,用于访问Nginx 是默认页面加载。

//新建index.php
<?php
phpinfo();
?>
  1. 修改PHP 配置,进入解压缩后的PHP 文件夹,复制一份php.ini-development 文件,然后将其修改为php.ini。为了让Nginx 和PHP 结合,打开php.ini 文件,找到fix_pathinfo,取消其注释,改成如下:
cgi.fix_pathinfo=1

使用

1.Nginx 的启动,直接进入Nginx 文件夹,双击Nginx.exe。当然后续你也可以写个bat 文件进行启动。启动后,直接访问浏览器会出现Nginx 环境界面,如图:



2.PHP 启动, .\php-cgi.exe -b 127.0.0.1:9000 -c D:/PHP/php-7.1.33-nts/php.ini 在cmd/powershell 中执行命令,路劲可改成你自己的路劲,如图:



3.启动成功后,可浏览器访问index.php,出现下图界面,恭喜你环境搭建完成。

总结

  1. 总的来说,PHP 的环境搭建还是算简单的,没有Java 麻烦。当然最简单的还是我们C# ,巨硬真是就差给我们嘴里喂饭了,有宇宙第一开发神器在手,做啥都是一把梭。
  2. 此处我们可以看到启动PHP 时,还得打开一个窗口,以前用过RunHiddenConsole.exe 这玩意很好用,能静默运行PHP和Nginx ,想了解的同学可以搜索相关资料

PHP入门-Window 下利用Nginx+PHP 搭建环境的更多相关文章

  1. linux下利用elk+redis 搭建日志分析平台教程

    linux下利用elk+redis 搭建日志分析平台教程 http://www.alliedjeep.com/18084.htm   elk 日志分析+redis数据库可以创建一个不错的日志分析平台了 ...

  2. CentOS 环境下基于 Nginx uwsgi 搭建 Django 站点

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,CentOS 环境下基于 Nginx uwsgi 搭建 Django 站点 以下 ...

  3. Linux下利用nginx实现负载均衡

    linux下利用nginx实现负载均衡 前提条件: 1,安装好jdk 2,安装好tomcat和nginx(可以参考我前两篇文章) 满足前提条件后,要用nginx实现负载均衡,主要是靠配置nginx的配 ...

  4. Spring Boot 利用 nginx 实现生产环境的伪热更新

    当我们在服务器部署Java程序,特别是使用了 Spring Boot 生成单一 Jar 文件部署的时候,单一文件为我们开发单来的极大的便利性,保障程序的完整性.但同时对我们修改程序中的任何一处都带来重 ...

  5. Ubuntu下利用Mono,Jexus搭建Asp.Net(MVC) Web服务器

    最近在Ubuntu上搭建了Asp.Net的Web服务器,其中遇到很多问题,整理一下思路,以备后用. 搭建环境以及配套软件 Ubuntu: 11.10 Mono:3.0.6 下载地址(http://do ...

  6. windows下利用nginx 做IIS负载均衡

    如果网站流量变大,就想加服务器分担压力,当然就要用到负载均衡,在windows 2003有自带的网络负载均衡,但配置还是挺麻烦的虽然有轮训和iphash的效果,但效果不算好. nginx小巧,下载不到 ...

  7. window下的nginx的安装和使用

    nginx功能之一可以启动一个本地服务器,通过配置server_name和root目录等来访问目标文件 一. 下载 http://nginx.org/en/download.html 下载后安装在你钟 ...

  8. Windows下安装Nginx+php+mysql环境

    系统:Windows 7 64位系统 安装之前,首先下载软件: Nginx: http://nginx.org/en/download.html PHP Stable PHP 5.6.26: http ...

  9. Centos7.2下基于Nginx+Keepalived搭建高可用负载均衡(一.基于Keepalived搭建HA体系)

    说明 本文只为方便日后查阅,不对一些概念再做赘述,网上都有很多明确的解释,也请大家先了解相关概念. 两台搭建HA的服务器是华为云上的ECS(不要忘记开通VPC,保证我们的服务器都处在一个内网环境),由 ...

随机推荐

  1. 记-Windows环境下Prometheus+alertmanager+windows_exporter+mtail监控部署

    1.概述 最近因项目需要统计服务的负载情况及机器的负载情况,但是项目里面却没有相关统计而服务所在的机器也没有相关的监控,因为工期原因就选择了相对轻量级的prometheus方案.其中windows_e ...

  2. 为什么 String 在 Java 中是不可变的?

    我最喜欢的 Java 面试问题,很棘手,但同时也非常有用.一些面试者也常问这个问题,为什么 String 在 Java 中是 final 的.字符串在 Java 中是不可变的,因为 String 对象 ...

  3. Springmvc入门基础(六) ---拦截器应用demo

    1.拦截器定义 Spring Web MVC 的处理器拦截器类似于Servlet 开发中的过滤器Filter,用于对处理器进行预处理和后处理. 2.拦截器demo demo需求: 拦截用户请求,判断用 ...

  4. su 和 sudo的区别

    su是一个命令,可切换其他用户进行操作:而 '-' 号则是代表是否完全切换指定的用户环境信息 sudo是一个服务,可通过/etc/sudoers进行配置文件,让被限制的用户只能执行被授予的命令操作.

  5. JVM监控工具介绍jstack, jconsole, jinfo, jmap, jdb, jsta

    JVM监控工具介绍 jstack - 如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程 ...

  6. hitcon_2017_ssrfme

    hitcon_2017_ssrfme 进入环境给出源码 <?php if (isset($_SERVER['HTTP_X_FORWARDED_FOR'])) { $http_x_headers ...

  7. C#和TS/JS的对比学习02:函数与方法

    程序本质上,就是由数据和处理数据的方法构成.函数和方法,这两个名词虽然字面不同,但意义上其实没有区别.只是因为它们出现的地方有异,给予了不同的名称,比如在全局环境中,叫函数,在对象或类中,叫方法.而C ...

  8. 从 输入网址(URL)到页面展示的过程

    1.用户输入url网址(URL) 用户输入url(也就是我们说的网址,也是统一资源定义符,用于定义互联网资源) 比如输入https://www.baidu.com 其中https为协议 baidu.c ...

  9. c++实现状态模式

    实验:用Java代码模拟实现课堂上的"银行账户"的实例,要求编写客户端测试代码模拟用户存款和取款,注意账户对象状态和行为的变化. 由于是c++,不像java那么灵活,所以类的调用方 ...

  10. java中字符串池,String池,共享池到底是怎么回事?

    栈中有共享池的概念,比 如下面例子中,sz="hello";在栈中创建一个String对象引用变量sz,然后看看栈中有没有"hello",如果没有,则将&quo ...