1. 说明

本文用来在windows环境下手工搭建PHP开发环境,安装的功能模块主要包含MySQL,PHP以及Apache三个,环境如下:

l Window7(64位)

l MySQL 5.7.14

l PHP 5.6(64位)

l Apache 2.4.23(64位)

为了方面管理与配置,我们将所有的功能模块都安装在C盘的PHP目录下。

2. MySQL

2.1 安装

下载地址:http://dev.mysql.com/downloads/installer/

双击下载的程序进行安装

2.2 服务

为了方便访问MySQL数据库,可以选择将MySQL安装为window服务。安装过程中可以选择将MySQL作为windows服务启动,没有设置的话可以手工设置作为windows服务。

以管理员身份运行命令行,进入MySQL安装目录,使用设置命令如下:

mysqld --install MySQL --defaults-file="xxx \my.ini"

其中defaults-file为安装目录下的my.ini文件。

2.3 远程连接

(1). 使用命名行登录mysql数据库

mysql -u root –p

(2). 使用mysql数据库,修改访问host,例如’%’

use mysql;

update user set host = '%' where user = 'root';

3. PHP

3.1 安装

下载地址:http://windows.php.net/download#php-5.6

下载VC11-x64-Thread-Safe版本,将下载的zip文件解压到c:/php/php目录中,将php.ini-development重命名为php.ini

3.2 配置扩展模块

打开php.ini文件,做如下设置:

(1). 设置扩展模块路径

extension_dir = "C:/php/php/ext"

(2). 启用mysql,curl等模块,移除前面的;号

extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_pdo_mysql.dll
extension=php_pdo_odbc.dll
extension=php_xmlrpc.dll

3.3 配置Session

在使用session功能时,必须配置session文件在服务器上的保存目录,否则无法使用session,新建一个可读写的目录文件夹,

php.ini配置文件中找到 ;session.save_path = "/tmp"  改成 session.save_path = "xxx"

3.4 配置文件上传

在使用PHP文件上传功能时,我们必须要指定一个临时文件夹以完成文件上传功能,否则文件上传功能会失败,在Windows 7上建立一个可读写的目录文件夹,

php.ini配置文件中找到 ;upload_tmp_dir = 改成 upload_tmp_dir = "xxx"

3.5 修改date.timezone

php.ini配置文件中找到;date.timezone = 改成 date.timezone = Asia/Shanghai

4. Apache

4.1 安装

下载地址:http://www.apachelounge.com/download/

下载httpd-2.4.23-win64-VC14.zip版本和运行环境vc_redist.x64.exe,首先安装运行环境vc_redist.x64.exe,然后将httpd-2.4.23-win64-VC14.zip文件解压到c:/php/apache目录中。

4.2 配置服务路径

进入apache目录下的conf目录,以记事本的方式打开httpd.conf,找到

ServerRoot "xxx" 这一行,修改为实际的安装路径,例如

ServerRoot "c:/php/Apache24"

4.3 配置监听端口

在httpd.conf文件中找到Listen 80这一行,修改为实际监听的IP和端口,例如 Listen 127.0.0.1:8080

4.4 配置web根目录

在httpd.conf文件中找到DocumentRoot "XXX" 这一行,将DocumentRoot "XXX"和<Directory "XXX">中的路径修改为实际使用的web站点目录。在Directory配置中可以设置对应的目录访问权限等。

4.5 配置PHP

(1). 加载PHP模块

在httpd.conf文件中#LoadModule vhost_alias_module modules/mod_vhost_alias.so下添加

LoadModule php5_module "c:/php/php/php5apache2_4.dll"
PHPIniDir "c:/php/php"

其中 c:/php/php 为php安装目录

(2). 设置index文件先后顺序

配置了PHP功能,使index.php优先执行,在httpd.conf文件中找到dir_module,在内部将

DirectoryIndex index.html改为

DirectoryIndex index.php index.html

(3). 支持php mime类型

在httpd.conf文件中找到mime_module,在内部添加

AddType application/x-httpd-php .php .html .htm

4.6 配置服务

Apache可以作为windows服务使用,使用管理员身份打开命令窗口,进入apache安装目录下的bin目录,执行以下命令

httpd -k install

即可以将apache作为windows服务安装。在apache安装目录下的bin目录中使用ApacheMonitor.exe就可以启动,关闭服务等操作。

4.7 多个端口

(1). 添加多个端口监听,在httpd.conf中添加多个listen,例如

Listen 127.0.0.1:8080

Listen 127.0.0.1:8081

(2). 针对每个端口配置VirtualHost,在httpd.conf中最后添加VirtualHost配置,例如

<VirtualHost *:8080>

DocumentRoot "d:/workspace/php1"

<Directory "d:/workspace/php1">

Options Indexes FollowSymLinks

AllowOverride all

Require all granted

</Directory>

</VirtualHost>

<VirtualHost *:8081>

DocumentRoot "d:/workspace/php2"

<Directory "d:/workspace/php2">

Options Indexes FollowSymLinks

AllowOverride all

Require all granted

</Directory>

</VirtualHost>

配置完成后就可以访问对应的端口

PHP Windows环境部署的更多相关文章

  1. Windows环境部署并调试pyspark(一)

    准备: windows环境说明:Python2.7 + pipspark版本:spark-1.6.1-bin-hadoop2.6 step1: 下载并解压tar包到自定义的路径.(下载链接 https ...

  2. ctrip-apollo windows环境部署

    https://blog.csdn.net/u010286334/article/details/78389484转载过来的方法,尝试了没有成功,不晓得哪里错了,无法打包portal访问 1.下载源码 ...

  3. Windows环境部署Redis集群

    一.准备文件 1. 下载Redis for windows 的最新版本  下载地址:https://github.com/MSOpenTech/redis/releases 安装到 c:\Redis ...

  4. workermanPHP聊天框架项目windows环境部署实践

    一.官方下载地址: https://www.workerman.net/workerman-chat 二.下载后解压至任意目录,如下图: 三.windows需配置PHP环境变量,如下图: 四.双击st ...

  5. 在 Windows 下部署 Go 语言环境

    http://bbs.chinaunix.net/thread-4088281-1-1.html 1. 首先下载官方二进制安装包:32 位选择 windows-386.msi64 位选择 window ...

  6. windows环境redis主从安装部署

    准备工作 下载windows环境redis,我下载的是2.4.5,解压,拷贝一主(master)两从(slaveof).主机端口使用6379,两从的端口分别为6380和6381, 我本地索性用6379 ...

  7. Windows环境安装Linux系统及JDK部署

    前言 由于我的笔记本有点问题,所以这周系统包括所有硬盘全部重装了,原来的Linux虚拟机都没了,因此才有了这篇文章和各位朋友们分享. 由于Linux环境的优越性(开源.低成本.安全性好.网络功能强大) ...

  8. Jenkins实现生产环境部署文件的回滚操作(Windows)

    由于dotnet项目的生产环境环境部署工具比较少,所以我使用jenkins作为生产环境的自动化部署工具. 既然有回滚操作,那么就会有部署操作:要实现回滚,先要实现部署的操作,我在jenkins搭建了一 ...

  9. 使用Vagrant在Windows下部署开发环境

    做Web开发少不了要在本地搭建好开发环境,虽然说目前各种脚本都有对应的Windows版,甚至是一键安装包,但很多时候和Windows环境的相性并不是那么好,各麻烦的问题是实际部署的环境通常是Linux ...

随机推荐

  1. android studio 不能创建或者安装模拟器

    解决方法: (1).对与这类问题实在不行卸载然后安装,看看自己的网络是否把android studio下载的东西给墙了,墙了记得换网. (2).我安装andriod studio 2.2.2.0 版本 ...

  2. call和apply的区别

    call和apply都属于function prototype的一个方法. 定义:调用一个方法的对象,以另一个对象替换当前对象. 相同点:两个方法产生的作用是一样的. 不同点:方法传递的参数不同. c ...

  3. jQuery种种

    jquery UI autocomplete获得焦点自动弹出跟随下拉框--http://blog.csdn.net/jiusong_mi/article/details/49249853 $(&quo ...

  4. acm结束了

    最后一场比赛打完了.之前为了记录一些题目,开了这个博客,现在结束了acm,这个博客之后也不再更新了. 大家继续加油!

  5. 函数返回多个值(c/c++)

    当我们在处理一个数组的时候常常会碰到这样的问题:输入一个数组,和数组的一个元素,返回该元素所在行数和列数.这样就需要返回多组两个值,且组数不定.上述类型的函数在c语言程序里面存在两个问题.第一,函数只 ...

  6. Git中如何利用生成SSH个人公钥访问git仓库

    Git中如何利用生成SSH个人公钥访问git仓库方法(这里以coding平台为例): 1. 获取 SSH 协议地址 在项目的代码页面点击 SSH 切换到 SSH 协议, 获得访问地址, 请使用这个地址 ...

  7. HDU 1233 还是畅通工程(最小生成树)

    传送门 还是畅通工程 Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total ...

  8. python学习笔记(二)

    (一)模块打包     --->        注:suba和subb文件夹下的__init__.py文件,即使为空,也必须存在 "setup.py" from distut ...

  9. 【原】小玩node+express爬虫-2

    上周写了一个node+experss的爬虫小入门.今天继续来学习一下,写一个爬虫2.0版本. 这次我们不再爬博客园了,咋玩点新的,爬爬电影天堂.因为每个周末都会在电影天堂下载一部电影来看看. talk ...

  10. 在 .NET 中开发基于 Chrome 内核的浏览器-创建一个简单浏览器

    首先在 http://www.cftea.com/tools/downloads/Cef.zip 下载文件包. 一.将文件解压拖入到 Visual Studio 对应的 WinForm 项目中. 二. ...