阿里云的WindowsServer2016上部署php+apache

yipeiwu_com5年前PHP代码库

一、说明:项目需要在阿里云的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/

本站推荐: Apache for Windows V2.4.27 vc9

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

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

下载完成

本站推荐:PHP For Windows 7.1.4 64位 Non Thread Safe 官方正式版

PHP For Windows 7.1.4 64位 Thread Safe 官方正式版

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

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

4、找到系统变量修改

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

实例:


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

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

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

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

开启服务

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

允许访问的后缀文件

修改e,默认是c

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

9、安装完成,点击启动

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

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

执行完毕后点击启动

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

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

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

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

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

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

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


解决方法:

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

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

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

解决:

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

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

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

修改后

相关文章

php实现修改新闻时删除图片的方法

本文实例讲述了php实现修改新闻时删除图片的方法。分享给大家供大家参考。具体实现方法如下: //old_contents:待修改的公告内容; //$content:修改后的公告内容...

php实现遍历多维数组的方法

本文实例讲述了php实现遍历多维数组的方法。分享给大家供大家参考,具体如下: $a=array('fruits'=>array('a'=>'orange','b'=>...

php模拟post上传图片实现代码

php模拟post上传图片实现代码

本文实例为大家分享了php模拟post上传图片的具体代码,供大家参考,具体内容如下 服务器和客户端都是php语言 但是客户端不是网页,不在浏览器上运行,而是在命令行运行 现在要做的是在客...

php中如何防止表单的重复提交

复制代码 代码如下:<?php/* * php中如何防止表单的重复提交 */session_start();if (empty($_SESSION['ip'])...

PHP设计模式之装饰器模式定义与用法详解

本文实例讲述了PHP设计模式之装饰器模式定义与用法。分享给大家供大家参考,具体如下: 什么是装饰器模式 作为一种结构型模式, 装饰器(Decorator)模式就是对一个已有结构增加"装饰...