一、說(shuō)明:項(xiàng)目需要在阿里云的WindowsServer2016上部署web環(huán)境,已經(jīng)安裝了Mysql,所以就不用一鍵安裝(如phpstudy或者wamp來(lái)安裝web環(huán)境了),就獨(dú)立安裝了Apache和PHP
二、安裝
1、按照鏈接下載好這3個(gè)東西,根據(jù)你的系統(tǒng)是32位還是64位來(lái)下載,我的環(huán)境是64位的
參考下載地址
VC2015(建議,因?yàn)閂C2012可能會(huì)缺少某些dll)
https://www.microsoft.com/en-US/download/details.aspx?id=48145
Apache
http://www.apachelounge.com/download/
PHP(這里注意的是需要下載不要Non版本的,non-thread-safe 是非線程安全與IIS 搭配環(huán)境,而thread-safe線程安全與apache 搭配的 環(huán)境)
http://windows.php.net/download/

下載完成

2、在WindowsServer2016里安裝VC,直接打開(kāi)vcredist_x64.exe安裝

3、安裝PHP,解壓到某個(gè)盤,比如我的E盤,修改下文件名變成php56


4、找到系統(tǒng)變量修改


5、將E:\php56\php.ini-production 復(fù)制一份,并重命名為php.ini ,編輯php.ini文件
開(kāi)啟一些需要的擴(kuò)展,修改完成保存
;extension_dir = "ext" => extension_dir = "E:\php56\ext" (去掉extension前面的分號(hào),并把右邊改成你安裝PHP的ext路徑,否則會(huì)加載擴(kuò)展不成功)
;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
實(shí)例:

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

7、安裝Apache,先解壓文件也放到E盤,重命名成Apache24

8、打開(kāi)Apache的httpd.conf文件進(jìn)行配置

修改:(E是我安裝的盤)

開(kāi)啟服務(wù)

目錄文件,你也可以放在其它文件夾,我保留放在htdocs這里

允許訪問(wèn)的后綴文件

修改e,默認(rèn)是c


最后在結(jié)束哪里加上這幾句

9、安裝完成,點(diǎn)擊啟動(dòng)
啟動(dòng)cmd,進(jìn)入e:\Apache24\bin\&; (你的Apache安裝目錄)
執(zhí)行 httpd -k install(用PowerShell 無(wú)法執(zhí)行這個(gè)命令)

執(zhí)行完畢后點(diǎn)擊啟動(dòng)

10、如果順利的話會(huì)出現(xiàn)Apache的啟動(dòng)頁(yè)面,說(shuō)明你的安裝已經(jīng)完成了

11、檢查,寫個(gè)phpinfo.php文件訪問(wèn),正常

三、問(wèn)題總結(jié),上面的結(jié)果只是順利的情況下得到的,如果不順利的話可能會(huì)遇到下面的一些坑
1、本地訪問(wèn)可以,但是外部訪問(wèn)失敗

遇到這種情況很有可能是你的端口沒(méi)開(kāi)放權(quán)限,用telnet試一下,如果出現(xiàn)下圖則表示是端口沒(méi)有開(kāi)放(我使用的是80端口)

解決:登陸你的阿里云服務(wù)器設(shè)置,如下面例子,設(shè)置端口開(kāi)發(fā)即可以訪問(wèn)



2、VC安裝成了2012版本,可能會(huì)丟失某些dll文件

解決方法:
去下載缺少的插件放到C盤

如果還不行的話建議還是先去卸載之前安裝的VC2012,然后再重新下載VC2015安裝

3、PHP安裝成了Non版本,可能會(huì)導(dǎo)致無(wú)法啟動(dòng)
解決:
先把PATH設(shè)置的變量清除掉,然后再下載一份完整的PHP非Non版本的覆蓋之前那個(gè),重啟電腦,重新設(shè)置PATH變量(如果還不行就把VC也卸載掉,再重啟走一邊流程)
4、php.ini的擴(kuò)展失效,已經(jīng)確認(rèn)了php.ini文件開(kāi)啟了mysql和mysql_pdo等擴(kuò)展,用phpinfo查看加載路徑也是正確的,但是就是沒(méi)有加載到這些擴(kuò)展

解決:查看你的php.ini的extension_dir,因?yàn)槟J(rèn)的是extension_dir="ext",當(dāng)你的PHP裝在了其它地方就要跟著修改路徑,比如我的是在E:\php56\ext

修改后

您可能感興趣的文章:- Windows Server 2016 上配置 APACHE+SSL+PHP+perl的教程詳解
- 阿里云的WindowsServer2016上部署php+apache