阿里云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 相关文章推荐
Optimizer与Debugger兼容性问题的解决方法
Dec 01 PHP
Windows PHP5和Apache的安装与配置
Jun 08 PHP
PHP小技巧之JS和CSS优化工具Minify的使用方法
May 19 PHP
ThinkPHP缓存方法S()概述
Jun 13 PHP
php微信公众平台开发类实例
Apr 01 PHP
php实现只保留mysql中最新1000条记录
Jun 18 PHP
PHP文件缓存类实现代码
Oct 26 PHP
php基于闭包实现函数的自调用(递归)实例分析
Nov 11 PHP
php使用PDO获取结果集的方法
Feb 16 PHP
php+redis实现商城秒杀功能
Nov 19 PHP
php微信支付之公众号支付功能
May 30 PHP
laravel 去掉index.php伪静态的操作方法
Oct 12 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程序开发范例学习之表单 获取文本框的值
2011/08/08 PHP
ucenter通信原理分析
2015/01/09 PHP
自己写的php curl库实现整站克隆功能
2015/02/12 PHP
php使用memcoder将视频转成mp4格式的方法
2015/03/12 PHP
php实现Session存储到Redis
2015/11/11 PHP
Yii中CArrayDataProvider和CActiveDataProvider区别实例分析
2016/03/02 PHP
Symfony2实现从数据库获取数据的方法小结
2016/03/18 PHP
php基于单例模式封装mysql类完整实例
2016/10/18 PHP
利用PHP访问MySql数据库的逻辑操作以及增删改查的实例讲解
2017/08/30 PHP
php ajax confirm 删除实例详解
2019/03/06 PHP
prototype 源码中文说明之 prototype.js
2006/09/22 Javascript
JQuery中each()的使用方法说明
2010/08/19 Javascript
js字符编码函数区别分析
2011/12/28 Javascript
javascript基础之查找元素的详细介绍(访问节点)
2013/07/05 Javascript
使用forever管理nodejs应用教程
2014/06/03 NodeJs
JavaScript 身份证号有效验证详解及实例代码
2016/10/20 Javascript
详解JavaScript树结构
2017/01/09 Javascript
详解微信小程序设置底部导航栏目方法
2017/06/29 Javascript
基于require.js的使用(实例讲解)
2017/09/07 Javascript
用JS实现根据当前时间随机生成流水号或者订单号
2018/05/31 Javascript
利用chrome浏览器进行js调试并找出元素绑定的点击事件详解
2021/01/30 Javascript
AngularJS实现的鼠标拖动画矩形框示例【可兼容IE8】
2019/05/17 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
Vue项目打包部署到iis服务器的配置方法
2019/10/14 Javascript
JavaScript实现网页tab栏效果制作
2020/11/20 Javascript
用python做一个搜索引擎(Pylucene)的实例代码
2017/07/05 Python
pytorch torch.expand和torch.repeat的区别详解
2019/11/05 Python
解决pycharm上的jupyter notebook端口被占用问题
2019/12/17 Python
基于Python数据结构之递归与回溯搜索
2020/02/26 Python
python 成功引入包但无法正常调用的解决
2020/03/09 Python
python 画图 图例自由定义方式
2020/04/17 Python
关于Python3爬虫利器Appium的安装步骤
2020/07/29 Python
python中pivot()函数基础知识点
2021/01/03 Python
销售2014年度工作总结
2014/12/08 职场文书
放弃继承权公证书
2015/01/23 职场文书
python 定义函数 返回值只取其中一个的实现
2021/05/21 Python