• 欢迎访问爱乐网,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入爱乐网的大家庭
  • 如果您觉得爱乐网非常符合您的胃口,那么赶紧使用Ctrl+D 将爱乐网加入浏览器收藏夹吧

win10系统phpStudy搭建Apache的PHP开发环境

互联网 爱乐网 2年前 (2016-10-25) 3669次浏览 0个评论 扫描二维码

本人大四学生一枚,最近学校安排了为期一周的 HTML5 的实训。在实训过程中讲到了 AJAX 这一部分,进行实训案例练习时需要用到后端技术 PHP,开发环境需要 PHP+MySQL+Apache,老师提供了phpStudyPHP2014 这个集成的开发环境。集成开发环境有很多,只要一键安装就把PHP 环境给搭建好了。之前我已经安装好了 MySQL,觉的使用phpStudyPHP2014 不太方便,于是想着搭建自己的 PHP 开发环境。

之前没有学习过 AJAX,先简单说下我的理解吧。它是一种支持异步请求的技术。用自己的话来讲就是用户在提交一个请求时可以实现局部刷新,而不需要重新载入刷新整个页面。比如想要在在购物车添加某件商品数量时,会重新载入整个页面。如果使用Ajax计算新的总量,服务器只会返回新的总量值,所需的带宽仅为原来的百分之一。再比如,在Ajax中,如果用户在分页列表上单击 Next,则服务器数据只刷新列表而不是整个页面。

新手配置环境是非常容易被环境欺负的,最初从网上找搭建教程,发现最新的PHP 环境搭建已经是 2015 年 12 月的了,当时为了尽快搭好环境,下载了博主提供的压缩包,按照教程进行了配置,却出现了各种错误,最后是我遇到的错误及解决办法汇总,亲测有效。在解决错误时,网上查的资料很多都过时了,解决起来比较困难,后来学会了查看Apache的错误日志Apache24/logs/error.log,提高了效率。白天要上课,自己的时间少,主要在虚拟目录这块儿浪费时间较多,后来发现目前我的需求根本用不着虚拟目录,在若干天之后总算成功了。于是突然奇想,为什么不用最新的Apache和 PHP 版本自己配置一遍呢?于是有了以下成果。

Apache官网从英文粗略的看出官方不再提供Apache服务器的安装包,只有源码编译。我英语水平相当不给力,这时候感受到了学英语的重要性,看着满屏英语没辙,于是从网上找了找资源,嘿嘿。发现 ApacheHaus、Apache Lounge 提供了安装包,亲自测试 Apache Lounge 这个网站是打不开的,最后从 www.apachehaus.com 下载到了最新的 httpd-2.4.23-x64-vc14-r3.zip,查阅资料发现系统必须安装 C++ Redistributable Visual Studio 2015 Update 1:VC_redist.x64.exe,还有后面需要用到的 FastCGI 模块 mod_fcgid-2.3.9-win64-VC14.zip。

win10 系统 phpStudy 搭建 Apache 的 PHP 开发环境

再上 PHP 官网 http://windows.php.net/download#php-7.0 上下载 PHP 安装包,发现都有 VC14 或 VC11 的字样,这是什么含义呢?VC11、VC14 是 Apache httpd 二进制版本的编译类型。另外要注意看 WEB服务器是什么,如果是 IIS 系列,就选择带“Non Thread Safe”的版本,如果是 Apache httpd 系列,就选择带“Thread Safe”的版本。

我这里用的是 Apache服务器,选择 php7.0.12 下“VC14 x64 Thread Safe (2016-Oct-13 21:05:31)”的压缩包(ZIP)版本。

win10 系统 phpStudy 搭建 Apache 的 PHP 开发环境
从 PHP 官网了解到,php7 作为 Apache 模块安装时仅支持 VC6 以下的 Apache,不能和 VC9 以上的 Apache 一起运行。我这里采用了网上推荐的 fastcgi 形式安装。

MySQL 之前已经安装好了,不再赘述。

Aache 安装测试

解压 httpd-2.4.23-x64-vc14-r3.zip,为了方便个人管理我将解压得到的文件夹 Apache24 直接放在 D 盘根目录下(D:)。同时对 Apache 配置文件 httpd.conf 中用到路径的配置作相应修改:

Define SRVROOT “D:/Apache24”

ServerRoot “${SRVROOT}”

DocumentRoot “F:/HBuilder-workpace”

<Directory “F:/HBuilder-workpace”>

</Directory>

本人 Server 目录为”D:/Apache24″工作目录为”F:/HBuilder-workpace”,另外附上旧版本的路径配置:

ServerRoot “D:/Apache24”

Document Root “F:/HBuilder-workpace”

<Diretory “F:/HBuilder-workpace”>

</Diretory>

发现新版本定义了变量 SRVROOT,个人感觉非常好用!

以管理员身份启动命令提示符,使用 cd D:/Apache24/bin 切换到 apache 的命令目录,在命令行输入 httpd.exe 即可启动 apache服务器

在浏览器输入地址 http://localhost,出现 It works!即代表 apache 启动成功。

win10 系统 phpStudy 搭建 Apache 的 PHP 开发环境

这种方式并没有将 apache 安装成为系统服务,命令行退出了服务也就结束了。安装成服务也非常简单,只需要执行 httpd.exe -k install,卸载服务执行命令 httpd.exe -k uninstall。安装成功后启动 bin 目录下的 ApacheMonitor 可以对服务器进行管理。

win10 系统 phpStudy 搭建 Apache 的 PHP 开发环境

PHP7 安装测试

解压 php-7.0.12-Win32-VC14-x64.zip 到 D:/php/并重命名为 php7。将前面准备好的 FastCGI 模块 mod_fcgid-2.3.9-win64-VC14.zip 解压得到 mod_fcgid.so 文件拷贝到 Apache 的 modules 文件夹。修改 Apache 配置文件 httpd.conf 添加 FastCGI 配置:

LoadModule fcgid_module modules/mod_fcgid.so

<IfModule fcgid_module>

FcgidInitialEnv PHPRC “D:/php/php7”

FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 1000

AddType application/x-httpd-php .php

<Files ~ “\.php$”>

AddHandler fcgid-script .php

FcgidWrapper “D:/php/php7/php-cgi.exe” .php

</Files>

</IfModule>

为站点根目录的 Options 增加 ExecCGI,我设置的站点目录为 F:/HBuilder-workpace

<Directory “F:/HBuilder-workpace”>

AllowOverride All

Options -Indexes +ExecCGI

</Directory>

找到:

<IfModule dir_module>

DirectoryIndex index.html

</IfModule>

添加 index.php 改为:

<IfModule dir_module>

DirectoryIndex index.php index.html

</IfModule>

站点默认加载 index.php

Apache 配置已经完成接着要配置 php7,php 的配置文件为php.ini,文件夹中并没有这个文件,但提供了php.ini-development 和php.ini-production 这两个文件作为参考,直接将php.ini-development 重命名为php.ini作为配置文件即可。配置文件可以设置 php 扩展库,需要指定扩展库所在的目录。

找到php.ini中 Dynamic Extensions 这一块儿关于 extension_dir 的注释,在后面直接添加 extension_dir=”D:/php/php7/ext”。开启相应的库只需要去除前面的分号(注释)即可:

extension=php_curl.dll

extension=php_gd2.dll

extension=php_mbstring.dll

extension=php_mysql.dll

extension=php_xmlrpc.dll

最后设置相应的时区,在 Date 这一块儿中 date.timezone = Asia/Shanghai

配置完成,重启 Apache 使配置生效。在站点目录(F:/HBuilder-workpace)新建记事本,并输入以下内容:<?php phpinfo() php?>,重命名该记事本为 index.php。此时在浏览器中输入:http://localhost/index.php,出现以下界面则配置成功。

win10 系统 phpStudy 搭建 Apache 的 PHP 开发环境

遇到的问题及解决:

运行 Apache 时命令提示符输入 httpd.exe 报错:

AH00558: httpd.exe: Could not reliably determine the server’s fully qualified domain name, using fe80::440e:6a61:c978:8441. Set the ‘ServerName’ directive globally to suppress this message

通过查阅资料得知需要对 ServerName 进行配置。解决办法:

1.进入 apache 的安装目录:D:/Apache24/conf

2.编辑 httpd.conf 文件,ctrl+F 搜索”#ServerName”,找到:

#ServerName http://www.example.com:80

#ServerName localhost:80

将#ServerName localhost:80 前的#号去点即可,#是注释的意思,去掉之后才会起生效。修改后:

#ServerName http://www.example.com:80

ServerName localhost:80

3.再重新启动 apache 。

这时候发现不再报错。虽然 AH00558 这个错误存在也能正常运行,不过解决掉不再报错心里是非常舒坦的。

修改 Apache 默认目录后没有访问权限:

在 httpd-conf 找到以下配置:

<Directory />

AllowOverride none

Require all deny

</Directory>

将 Require all deny 改为 Require all granted 即可

<Directory />

AllowOverride none

Require all granted

</Directory>

修改 Apache 默认端口:

将 Listen 80(仅此一处)修改为 Listen 8080 或者 Listen 8088,注意端口不能随意更改为任意数字!


爱乐网(http://aile.so) , 版权所有丨如未注明 , 均为原创丨爱乐网采用BY-NC-SA协议进行授权 , 转载请注明:win10 系统 phpStudy 搭建 Apache 的 PHP 开发环境
爱乐网淘券特价商品推荐
喜欢 (1)
[]
分享 (0)
爱乐网
关于作者:
爱乐网,专注互联网最新科技资讯分享,汇集各种软件教程、游戏攻略,为用户收集整理各类破解软件、正版软件、小工具的软件下载网站,永久网址:http://aile.so
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到