阿里云Win2016安装Apache和PHP环境图文教程


Posted in PHP onMarch 11, 2018

一、说明:项目需要在阿里云的WindowsServer2016上部署web环境,已经安装了Mysql,所以就不用一键安装(如phpstudy或者wamp来安装web环境了),就独立安装了Apache和PHP

二、安装

1、按照链接下载好这3个东西,根据你的系统是32位还是64位来下载,我的环境是64位的

参考下载地址

VC2015(建议,因为VC2012可能会缺少某些dll)

https://www.microsoft.com/en-US/download/details.aspx?id=48145

Apache

http://www.apachelounge.com/download/

PHP(这里注意的是需要下载不要Non版本的,non-thread-safe 是非线程安全与IIS 搭配环境,而thread-safe线程安全与apache 搭配的 环境)

http://windows.php.net/download/

阿里云Win2016安装Apache和PHP环境图文教程

下载完成

阿里云Win2016安装Apache和PHP环境图文教程

2、在WindowsServer2016里安装VC,直接打开vcredist_x64.exe安装

阿里云Win2016安装Apache和PHP环境图文教程

3、安装PHP,解压到某个盘,比如我的E盘,修改下文件名变成php56

阿里云Win2016安装Apache和PHP环境图文教程

阿里云Win2016安装Apache和PHP环境图文教程

4、找到系统变量修改

阿里云Win2016安装Apache和PHP环境图文教程

阿里云Win2016安装Apache和PHP环境图文教程

5、将E:\php56\php.ini-production 复制一份,并重命名为php.ini ,编辑php.ini文件

开启一些需要的扩展,修改完成保存

;extension_dir = "ext" =>  extension_dir = "E:\php56\ext" (去掉extension前面的分号,并把右边改成你安装PHP的ext路径,否则会加载扩展不成功)

;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_curl.dll => extension=php_curl.dll

;extension=php_pdo_mysql.dll => extension=php_pdo_mysql.dll

实例:

阿里云Win2016安装Apache和PHP环境图文教程

6、cmd命令查看是否成功:php -v,下面代表成功

阿里云Win2016安装Apache和PHP环境图文教程

7、安装Apache,先解压文件也放到E盘,重命名成Apache24

阿里云Win2016安装Apache和PHP环境图文教程

8、打开Apache的httpd.conf文件进行配置

阿里云Win2016安装Apache和PHP环境图文教程

修改:(E是我安装的盘)

阿里云Win2016安装Apache和PHP环境图文教程

开启服务

阿里云Win2016安装Apache和PHP环境图文教程

目录文件,你也可以放在其它文件夹,我保留放在htdocs这里

阿里云Win2016安装Apache和PHP环境图文教程

允许访问的后缀文件

阿里云Win2016安装Apache和PHP环境图文教程

修改e,默认是c

阿里云Win2016安装Apache和PHP环境图文教程

阿里云Win2016安装Apache和PHP环境图文教程

最后在结束哪里加上这几句

阿里云Win2016安装Apache和PHP环境图文教程

9、安装完成,点击启动

启动cmd,进入e:\Apache24\bin\  (你的Apache安装目录) 

执行 httpd -k install(用PowerShell 无法执行这个命令)

阿里云Win2016安装Apache和PHP环境图文教程

执行完毕后点击启动

阿里云Win2016安装Apache和PHP环境图文教程

10、如果顺利的话会出现Apache的启动页面,说明你的安装已经完成了

阿里云Win2016安装Apache和PHP环境图文教程

11、检查,写个phpinfo.php文件访问,正常

阿里云Win2016安装Apache和PHP环境图文教程

三、问题总结,上面的结果只是顺利的情况下得到的,如果不顺利的话可能会遇到下面的一些坑

1、本地访问可以,但是外部访问失败

阿里云Win2016安装Apache和PHP环境图文教程

遇到这种情况很有可能是你的端口没开放权限,用telnet试一下,如果出现下图则表示是端口没有开放(我使用的是80端口)

阿里云Win2016安装Apache和PHP环境图文教程

解决:登陆你的阿里云服务器设置,如下面例子,设置端口开发即可以访问

阿里云Win2016安装Apache和PHP环境图文教程

阿里云Win2016安装Apache和PHP环境图文教程

阿里云Win2016安装Apache和PHP环境图文教程

2、VC安装成了2012版本,可能会丢失某些dll文件

阿里云Win2016安装Apache和PHP环境图文教程

解决方法:

去下载缺少的插件放到C盘

阿里云Win2016安装Apache和PHP环境图文教程

如果还不行的话建议还是先去卸载之前安装的VC2012,然后再重新下载VC2015安装

阿里云Win2016安装Apache和PHP环境图文教程

3、PHP安装成了Non版本,可能会导致无法启动

阿里云Win2016安装Apache和PHP环境图文教程解决:

先把PATH设置的变量清除掉,然后再下载一份完整的PHP非Non版本的覆盖之前那个,重启电脑,重新设置PATH变量(如果还不行就把VC也卸载掉,再重启走一边流程)

4、php.ini的扩展失效,已经确认了php.ini文件开启了mysql和mysql_pdo等扩展,用phpinfo查看加载路径也是正确的,但是就是没有加载到这些扩展

阿里云Win2016安装Apache和PHP环境图文教程

解决:查看你的php.ini的extension_dir,因为默认的是extension_dir="ext",当你的PHP装在了其它地方就要跟着修改路径,比如我的是在E:\php56\ext

阿里云Win2016安装Apache和PHP环境图文教程

修改后

阿里云Win2016安装Apache和PHP环境图文教程

PHP 相关文章推荐
php开发过程中关于继承的使用方法分享
Jun 17 PHP
Codeigniter实现处理用户登录验证后的URL跳转
Jun 12 PHP
php实现的ping端口函数实例
Nov 12 PHP
PHP中数据类型转换的三种方式
Apr 02 PHP
php检查是否是ajax请求的方法
Apr 16 PHP
Zend Framework实现多服务器共享SESSION数据的方法
Mar 22 PHP
详解PHP的Yii框架中自带的前端资源包的使用
Mar 31 PHP
php mysql like 实现多关键词搜索的方法
Oct 29 PHP
php基于dom实现的图书xml格式数据示例
Feb 03 PHP
浅谈PHP接入(第三方登录)QQ登录 OAuth2.0 过程中遇到的坑
Oct 13 PHP
PHP实现的贪婪算法实例
Oct 17 PHP
laravel框架创建授权策略实例分析
Nov 22 PHP
Yii2 中实现单点登录的方法
Mar 09 #PHP
php中输出json对象的值(实现方法)
Mar 07 #PHP
php 读写json文件及修改json的方法
Mar 07 #PHP
php读取本地json文件的实例
Mar 07 #PHP
PHP中in_array的隐式转换的解决方法
Mar 06 #PHP
php连接MSsql server的五种方法总结
Mar 04 #PHP
php记录搜索引擎爬行记录的实现代码
Mar 02 #PHP
You might like
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
2014/01/03 PHP
浅谈php扩展imagick
2014/06/02 PHP
浅析get与post的一些特殊情况
2014/07/28 PHP
PHP中set error handler函数用法小结
2015/11/11 PHP
用示例说明filter()与find()的用法以及children()与find()的区别分析
2013/04/26 Javascript
jquery select多选框的左右移动 具体实现代码
2013/07/03 Javascript
利用jQuery实现可输入搜索文字的下拉框
2013/10/23 Javascript
node.js中的emitter.on方法使用说明
2014/12/10 Javascript
ECMAScript5(ES5)中bind方法使用小结
2015/05/07 Javascript
文字垂直滚动之javascript代码
2015/07/29 Javascript
JavaScript获取服务器端时间的方法
2016/11/29 Javascript
原生Aajax 和jQuery Ajax 写法个人总结
2017/03/24 jQuery
详解angularJs指令的3种绑定策略
2017/04/13 Javascript
vue中设置、获取、删除cookie的方法
2018/09/21 Javascript
vue计算属性computed、事件、监听器watch的使用讲解
2019/01/21 Javascript
webpack4 SplitChunks实现代码分隔详解
2019/05/23 Javascript
VUE 解决mode为history页面为空白的问题
2019/11/01 Javascript
浅谈vue生命周期共有几个阶段?分别是什么?
2020/08/07 Javascript
Javascript中Math.max和Math.max.apply的区别和用法详解
2020/08/24 Javascript
[01:03:09]完美世界DOTA2联赛PWL S2 Forest vs SZ 第二场 11.25
2020/11/26 DOTA
Python打印scrapy蜘蛛抓取树结构的方法
2015/04/08 Python
Python遍历目录并批量更换文件名和目录名的方法
2016/09/19 Python
Python3 适合初学者学习的银行账户登录系统实例
2017/08/08 Python
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
2018/04/18 Python
详解Python传入参数的几种方法
2019/05/16 Python
python简单鼠标自动点击某区域的实例
2019/06/25 Python
HTML5在手机端实现视频全屏展示方法
2020/11/23 HTML / CSS
全球知名鞋履品牌授权零售商:Journeys
2016/09/17 全球购物
新西兰最大的连锁超市:Countdown
2020/06/04 全球购物
颁奖典礼主持词
2014/03/25 职场文书
县级文明单位申报材料
2014/05/23 职场文书
小学生国庆节演讲稿
2014/09/05 职场文书
会议通知范文
2015/04/15 职场文书
八年级作文之感悟亲情
2019/11/20 职场文书
恶魔之树最顶端的三颗果实 震震果实上榜,第一可以制造岩浆
2022/03/18 日漫
手把手带你彻底卸载MySQL数据库
2022/06/14 MySQL