win7 nginx mysql php_windows7配置Nginx+php+mysql的详细教程

最近在学习PHP,想把自己的学习经历记录下来,并写一些经验,仅供参考交流。此文适合那些刚刚接触PHP,想要学习并想要自己搭建Nginx+PHP+MysqL环境的同学。

当然,你也可以选择集成好的安装包,比如 wamp等,不过我推荐大家还是自己手动搭建一下环境比较好,这样能够更好的了解PHP及其运行流程。下面直接进入正题。

步骤:

1.准备安装包等

(1)Nginx-1.10.1.zip,下载链接为http://Nginx.org/en/download.html 。我个人选择了稳定版。

(2)PHP-5.6.25-nts-Win32-VC11-x86.zip或x64.zip 下载链接为http://windows.PHP.net/download#PHP-5.6,根据系统类型选择相应版本。

(3)MysqL-installer--------.msi 下载链接为http://dlsw.baidu.com/sw-search-sp/soft/ea/12585/MysqL-5.6.24-win32.1432006610.zip,由于MysqL官网需要注册,所以我直接贴了百度的地址。

2.安装MysqL服务(如果以前安装过MysqL则可以不必下载安装,在操作的时候启动MysqL服务即可。)

双击MysqL-install-------.msi安装包进入安装环境界面,选择默认选项进行安装,采用Typical(典型安装),并启动MysqL配置向导,选择默认选项配置,此处编码选择UTF-8,设置数据库密码后(一般为root),“Execute ”执行,点击“Finish”完成安装。要确保打开MysqL服务,检查是否打开服务的方法为: win+R 输入services.msc 回车,查看是否如下图所示有MysqL服务并为开始状态。

2016090409305311.jpg

3.安装Nginx-1.10.1

(1)解压Nginx-1.10.1.zip文件至C:\wnmp\Nginx,并进入该文件夹内,找到Nginx.exe,鼠标双击Nginx.exe,启动Nginx。

进入任务管理器进程选项卡,如找到Nginx.exe进程,即确认Nginx已启动。

打开浏览器,在浏览器地址栏内键入:http://127.0.0.1,如看到如下图所示界面,说明Nginx正常工作。

2016090409305312.jpg

(2)进入C:\wnmp\Nginx\conf文件夹内,记事本或写字板打开Nginx的配置文件Nginx.conf

找到如下两处进行修改,修改内容如下

PHP;">

server {

listen 80;

server_name localhost;

#modify by lee 20160902 for PHP -s

location / {

root C:/wnmp/www;

index index.html index.htm index.PHP;

}

# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

location ~ \.PHP$ {

root C:/wnmp/www;

fastcgi_pass 127.0.0.1:9001;

fastcgi_index index.PHP;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

include fastcgi_params;

}

#modify by lee 20160902 for PHP -e

}

4.安装PHP-5.6.25-nts-Win32-VC11-x64/x86

(1)解压PHP-5.6.25-nts-Win32-VC11-x64/x86.zip文件到C:\wnmp\PHP。

(2)进入C:\wnmp\PHP目录内,备份PHP.ini-development一份,将PHP.ini-development重命名为PHP.ini

查找定位并修改:

; extension_dir = "ext" ,删除前面的分号并修改为:extension_dir = "C:/wnmp/PHP/ext"

;extension=PHP_gd2.dll,删除前面的分号:extension=PHP_gd2.dll

;extension=PHP_mbstring.dll,删除前面的分号:extension=PHP_mbstring.dll

;extension=PHP_MysqL.dll,删除前面的分号:extension=PHP_MysqL.dll

;extension=PHP_MysqLi.dll,删除前面的分号:extension=PHP_MysqLi.dll

;extension=PHP_pdo_MysqL.dll,删除前面的分号:extension=PHP_pdo_MysqL.dll

;cgi.force_redirect = 1,删除前面的分号:cgi.force_redirect = 1

;cgi.fix_pathinfo=1,删除前面的分号:cgi.fix_pathinfo=1

;cgi.rfc2616_headers = 0,删除前面的分号:cgi.rfc2616_headers = 1

(3)配置环境变量:

打开环境变量配置窗口,

在系统环境变量中添加 变量  变量名:PHP_HOME    变量值:C:\wnmp\PHP

在系统环境变量中添加 变量  变量名:Nginx_HOME  变量值:C:\wamp\Nginx

在path变量最后添加:%PHP_HOME%;%Nginx_HOME%;  (注意添加分号)

(4)启动php-cgi 服务:

win+R 输入cmd回车,进入命令提示符界面,进入C:\wnmp\PHP>,

使用命令 php-cgi.exe -b 127.0.0.1:9001 -c PHP.ini

重新打开一个新的命令提示符界面,

输入命令: netstat -ano|findstr "9001"会出现 9001端口号占用情况

再次输入命令: tasklist|findstr "2892" (注:2892为上一个命令执行完毕后,最后一列显示的进程号)

如下图所示:表示 php-cgi服务启动成功

2016090409305313.jpg

(5)编写启动脚本 start.bat (其实到上步为止,已经配置完成,但是为了以后便于启动各种服务,特此编写一个启动脚本。)

新建文本文档,重命名为start.bat

用记事本打开后,做如下编辑:

(如果所以文件目录与本教程所述完全一致,则此脚本可以直接使用,如果有区别,则需要对Nginx_DIR和PHP_DIR做相应修改后使用)

nul

ECHO.Stopping PHP FastCGI......

ECHO.OK,Stop all Nginx process and PHP fastcgi

goto :eof

:startNginx

ECHO.

ECHO.Start Nginx......

IF NOT EXIST "%Nginx_DIR%Nginx.exe" ECHO "%Nginx_DIR%Nginx.exe" is not exists

%Nginx_PATH%

cd "%Nginx_DIR%"

IF EXIST "%Nginx_DIR%Nginx.exe" (

echo "start '' Nginx.exe"

start "" Nginx.exe

)

ECHO.OK

goto :eof

:startPHPFastCGI

ECHO.

ECHO.Start PHP FastCGI......

IF NOT EXIST "%PHP_DIR%php-cgi.exe" ECHO "%PHP_DIR%php-cgi.exe" is not exists

%Nginx_PATH%

cd "%PHP_DIR%"

IF EXIST "%PHP_DIR%php-cgi.exe" (

echo "start '' php-cgi.exe"

start /b php-cgi.exe -b 127.0.0.1:9001 -c PHP.ini

)

ECHO.OK

goto :eof

(6)测试成功

在C:\wnmp下新建www文件夹,在www文件夹下新建PHP文件 index.PHP,并做如下编辑

如下MysqLi_connect()代码部分需要 做相应更改。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/417866.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

我的虚拟化设想(My virtualization vision)

王洪岐(Wang Hongqi) 当前的服务器虚拟化技术所虚拟的操作系统都是完整的操作系统,我认为这样会在一定程度上造成了资源的浪费和技术难度的增加:多个操作系统就有多个操作硬件设备的操作程序,虚拟平台要在操作系统底层…

mysql start with connect by_MYSQL实现Oracle的Start with…Connect By递归树查询

最近接触一个老项目,最初适配的数据库是oracle 后来迁移到mysql 。这个迁移是由一个已经离职的新手做的。这个新手对于很多oracle特有的函数及存储过程都没有进行迁移。导致系统很多功能都BUG了。失效了。既然我遇到了,就尽量进行解决。刚刚遇到了一个存…

Kmplayer播放器 绿色免安装版 2016 中文版

软件名称: Kmplayer播放器 绿色免安装版 软件语言: 简体中文 授权方式: 免费软件 运行环境: Win 32位/64位 软件大小: 42.8MB 图片预览: 软件简介: Kmplayer播放器绿色免安装版,多功能的影音播放…

java 关闭时_java – 活动关闭时服务停止

我已经阅读了一些与这个问题相关的答案,它们似乎都是一样的:“使用START_STICKY运行您的服务”“在前台运行您的服务”“使用startService运行您的服务,不要绑定它”我正在做所有这些事情,我的服务STILL关闭并在每次关闭活动时重新启动.这不是IntentService.我也没有…

ie6 offsetWidth/offsetHeight无效

ie6 offsetWidth/offsetHeight无效可采用手动获取:offsetWidthparseInt(node.style.width)parseInt(node.style.paddingLeft)parseInt(node.style.paddingRight);offsetHeightparseInt(node.style.height)parseInt(node.style.paddingTop)parseInt(node.style.paddi…

什么是反向代理,如何区别反向与正向代理

转自:http://blog.csdn.NET/shixing_11/article/details/7106241 一直对反射代理的反向不知道如何理解,经过百度知道,再结合下面这幅图,总算弄清楚一点了。简单的说从一个局域网出来到服务端为正向,从客户端要进入一个…

java socket 浏览器_Socket实现Java和浏览器交互。

昨天写了段小程序,现贴出来看看。以下是socket的简单介绍。获取两台联通的机器之间的IP和端口号等信息。import java.io.IOException;import java.net.Socket;public class SockerDemo {public static void main(String[] args) throws IOException {Socket socket …

C常用函数

///printf()%d 整数%f 浮点%p 指针地址 ///bzero(void *s, int n);原型&#xff1a;extern void bzero(void *s, int n);  用法&#xff1a;#include <string.h>  功能&#xff1a;置字节字符串s的前n个字节为零。 ///FD_ZERO(fd_set *fdset);将指定的文件描述符集清…

HashMap和ConcurrentHashMap的区别,HashMap的底层源码。

Hashmap本质是数组加链表。根据key取得hash值&#xff0c;然后计算出数组下标&#xff0c;如果多个key对应到同一个下标&#xff0c;就用链表串起来&#xff0c;新插入的在前面。 ConcurrentHashMap&#xff1a;在hashMap的基础上&#xff0c;ConcurrentHashMap将数据分为多个s…

mudos开发简介

首先我们应该知道mudos提供哪些服务我们可以从许多lib中找到我们需要什么假设我们的lib还是拥有很多现在mud的特性 比如战斗 人物和世界我们需要一些最基本的东西比如 master.c user.c login.c <include>你完全可以使用不一样的文件名 甚至修改出自己的mudos 你也可以完全…

java hanoi塔问题_java 解决汉诺塔问题

//汉诺塔问题//HanYang 2016/10/15import java.util.Scanner;//输出public class Hanuota {public static void Show(String a,String b){System.out.print(" " a "->" b " " );}//从a移到cpublic static void Fun(int n, String a,Strin…

心跳防护程序

心跳防护程序的作用心跳防护程序用于实现无人值守的程序的自维护功能&#xff0c;使得被防护程序由于某种异常而导致崩溃时可以自动重新启动&#xff0c;满足无人值守的环境要求。心跳防护程序适用于那些需要无人值守&#xff0c;长期运行&#xff0c;但程序由于不确定性因素有…

[水煮 ASP.NET Web API2 方法论](1-1)在MVC 应用程序中添加 ASP.NET Web API

问题 怎么样将 Asp.Net Web Api 加入到现有的 Asp.Net MVC 项目中 解决方案 在 Visual Studio 2012 中就已经把 Asp.Net Web Api 自动地整合到了 MVC 项目模板中。自 Visual Studio 2013 以后&#xff0c;创建 ASP.Net Web应用程序使用的是一种新的"One ASP.NET"项目…

java io流文件损坏_java使用io流下载.docx. xlsx文件,出现文件损坏提示

介绍在使用io流下载服务器上的资源文件时&#xff0c;出现以下提示&#xff1a;但是选择“是”后文件可以正常打开参考 代码如下&#xff1a;[codesyntax lang"java"]RequestMapping(value "downLoadInstruction")public void downLoadInstruction(HttpSe…

java des对称加密_JAVA加密解密DES对称加密算法

1 下面用DES对称加密算法(设定一个密钥&#xff0c;然后对所有的数据进行加密)来简单举个例子。23 首先&#xff0c;生成一个密钥KEY。4 我把它保存到key.txt中。这个文件就象是一把钥匙。谁拥有它&#xff0c;谁就能解开我们的类文件。代码参考如下&#xff1a;5 packagecom.n…

计算机的存储单位

位 bit (比特)(Binary Digits)&#xff1a;存放一位二进制数&#xff0c;即 0 或 1&#xff0c;最小的存储单位。字节 byte&#xff1a;8个二进制位为一个字节(B)&#xff0c;最常用的单位。计算机存储单位一般用B&#xff0c;KB&#xff0c;MB&#xff0c;GB&#xff0c;TB&am…

C内存管理详解

【规则1】用malloc或new申请内存之后&#xff0c;应该立即检查指针值是否为NULL。防止使用指针值为NULL的内存。 【规则2】不要忘记为数组和动态内存赋初值。防止将未被初始化的内存作为右值使用。 【规则3】避免数组或指针的下标越界&#xff0c;特别要当心发生“多1”或者“…

Dubbo xml配置 和注解配置 写法

<?xml version"1.0" encoding"UTF-8"?><!-- - Copyright 1999-2011 Alibaba Group. - - Licensed under the Apache License, Version 2.0 (the "License"); - you may not use this file except in compliance with the Licen…

java solr_通过Java访问Solr服务实例及相关配置

一、通过Java访问Solr服务(手动创建索引库)1、创建项目&#xff0c;配置环境(导包及相关文件)1、SolrJ核心包 /solr-4.10.3/dist/solr-solrj-4.10.3.jar2、SolrJ依赖包 /solr-4.10.3/dist/solrj-lib下的所有包3、日志依赖包 /solr-4.10.3/example/lib/ext目录下的所有jar包4、J…

WCF RIA优缺点

优点&#xff1a;WCF RIA提供方便的数据访问形式&#xff0c;服务端代码写在.cs文件中继承DomainService&#xff0c;类前要声明[EnableClientAccess()]生成后sliverlight项目中/Generated_Code下会有对应的.g.cs文件&#xff0c;该文件会包含WCF RIA服务中各方法的访问方法。缺…