Windows Azure免费空间如何搭建PHP网站/数据库、域名绑定
7月份,阿象为大伙介绍了中国版Windows Azure如何建站、自定义远程虚拟机,最高可选四核、28G内存的服务器,相信不少站长、开发者用户大呼过瘾。不过Azure建站系统仅支持SQL数据库,并不支持大家熟悉的MySQL平台。
那如何搭建PHP网站,日常中的WordPress博客、PHPWind/Discuz!等论坛程序都需要完整的PHP+MySQL平台环境,这时 我们可以直接利用Azure平台的Windows Server 2012 R2云系统,借助IIS 8.5+PHP+MySQL三大件,即可搭建一个完整的PHP网站,而且支持绑定顶级域名,可以外网访问。
阿象点评:整个操作好比本地搭建IIS+PHP环境,具体可以参考《Win8.1系统下配置搭建IIS8.5+PHP5.5.4》,同时阿象还将补充下MySQL、域名绑定等内容。
准备工作:
一、PHP 5.5.X,根据系统版本下载32位/64位,官网:http://windows.php.net/download
二、PHPMyAdmin数据库管理工具,官网:http://www.phpmyadmin.net/
三、MySQL数据库工具,访问官网:http://dev.mysql.com/downloads/mysql/
四、PHP程序任一,例如PHPWind程序
操作步骤:
一、创建Azure虚拟机(以Windows server 2012 r2为例)
1、访问中国版Azure后台:https://manage.windowsazure.cn/ ,选择新建虚拟机,最高可选四核心、28G内存,设置虚拟机用户名和密码;

2、稍等片刻,完成虚拟机创建后,选中刚才创建的虚拟机,打开端口,手动添加HTTP名称和80端口(必选);

3、稍等片刻,即可开启HTTP端口服务;

4、最后,点击底部的连接,即可手动下载一个RDP专用远程桌面连接快捷方式,双击运行该远程桌面连接,输入系统账户+密码,即可直接登陆远程虚拟机。
二、搭建IIS+PHP环境
1、远程登陆Windows Server 2012 R2虚拟机,打开服务器管理器,选择添加和功能向导,手动勾选”Web服务器(IIS)”,如下图所示。


2、在角色服务中,必选CGI应用程序开发,如下图;


3、完成IIS功能和角色添加后,即可用IE访问http://127.0.0.1 ,检查能否打开IIS 8.5多国语言欢迎界面

4、下载PHP程序包,例如下载VC11 x64 Thread Safe 版本的压缩包,并解压到C:\inetpub\php目录;
5、打开服务器管理器,选择管理,进入Internet信息服务(IIS)管理器,选中当前的网站,双击IIS功能区中”处理程序映射“;

6、选择添加模块映射,请求路径输入”*.php“,模块选择FastCgiModule模式,可执行文件时,文件格式可以选择exe程序和选择路径:C:\inetpub\php\php-cgi.exe,名称比如php,最后确定添加模块映射。


7、手动给网站添加默认文档:default.php和index.php两个文档;

8、配置PHP:进入C:\inetpub\php目录,重命名文件php.ini-development改名为php.ini;

9、用记事本打开编辑php.ini文件,阿象建议用Ctrl+F搜索定位,将PHP环境默认的date.timezone修改为date.timezone=”Asia/Hongkong”,即修改当前的系统时区, 同时将前面的分号”;”删除,即可生效。
除此之外,我们还得激活PHP相关扩展、设置PHP扩展目录,即将相应dll语句前的分号”;”删除,具体如下:
;extension=php_gd2.dll 改为extension=php_gd2.dll
;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_pdo_mysql.dll改为extension=php_pdo_mysql.dll

然后搜索extension_dir,修改路径为extension_dir = “C:\inetpub\php\ext\” ,同时将前面的分号”;”删除生效。

10、PS:(在命令行中进入php安装目录下,比如C:\inetpub\php\php.exe -m,输入php -m命令,即可查看已开启的dll扩展模块)。

三、部署MySQL数据库
由于PHP网站大多数依赖MySQL数据库,因此,我们还得手动部署数据库套件和服务,这时,我们只需下载安装MySQL数据库套件,就自动联机PHP+IIS环境。

阿象提醒:在MySQL安装过程中,建议设置”Server Machine(服务器)”模式,默认端口为3306,同时也要为root管理员设置高强度的密码。

四、本地测试PHP程序
现在,我们只需将PHP论坛程序手动部署在C:\inetpub\wwwroot目录下,即可安装、运行、调试PHP网站,如下图所示;

五、域名绑定、DNS解析
当PHP论坛完成调试后,我们即可将Azure虚拟机公网IP绑定域名,开启DNS解析服务,例如国内DNSPod服务商,即可完成网站后续工作,支持外网访问解析。
1、为什么Azure虚拟机支持绑定域名?
阿象:这是由于Azure为每个虚拟机分配独立公网IP,也就是服务器IP地址,从而实现建站目标,具体在仪表板进行查询。

2、如何解析域名和DNS?
阿象:Azure玩家需要准备一个域名,例如xiang8.tk,具体可以用DNSPod域名解析服务,手动添加Azure公网IP两条A记录,即可完成网站解析服务。

3、外网如何访问我的Azure虚拟机本地网站?
阿象:这个非常简单。直接输入IP+网站根目录,或者域名+网站根目录,即可。例如阿象随机搭建一个演示站:http://www.xiang8.tk/bbs (延迟在0.020秒左右,速度非常惊人)

阿象点评:Azure虚拟机建站非常适合新手、老手站长,整体体验就是Windows完全本地化测试,依赖IIS+PHP+MySQL三大件,操作非常简洁明了,同时Azure服务器提供了四核心、28G内存以及140GB流量额,这道”免费午餐(可试用60天)”非常诱人。
Windows Azure免费空间如何搭建PHP网站/数据库、域名绑定的更多相关文章
- Windows Azure 免费初体验 - 创建部署网站
前几天在看到有个学Windows Azure课程,送Windows Azure的活动,课程地址:http://www.microsoftvirtualacademy.com/ 在活得体验资格后,就迫不 ...
- 在Windows Azure上创建ASP.NET MVC网站
本篇体验在Windows Azure上创建ASP.NET MVC网站. →登录到Windows Azure管理门户 →点击左下方的"新建" →点击"自定义创建" ...
- 搭建Windows Azure开发环境-环境搭建
虚拟机中运行 练习1:使用远程桌面连接到虚拟机 在本节中,你会登录到Windows Azure的门户网站,并使用Windows Azure库创建的Azure虚拟机. 任务1 -配置的Visual St ...
- Windows Azure 微软公有云体验(一) 网站、SQL数据库、虚拟机
Windows Azure 微软公有云已经登陆中国有一段时间了,现在是处于试用阶段,Windows Azure的使用将会给管理信息系统的开发.运行.维护带来什么样的新体验呢? Windows Azur ...
- 万网免费主机wordpress快速建站教程-域名绑定及备案
进入主机管理界面,点击管理 点击域名绑定,绑定域名项选择已有域名,选择已购买的域名,点击一键解析域名,点击添加,即可完成域名解析工作. 由于没有备案,备案状态显示为未备案,点击旁边的备案链接,跳转至阿 ...
- 为在Windows Azure上的网站配置自定义域名
本篇体验给Windows Azure上的网站自定义域名,首先"CNAME"和"A记录"是必须了解的概念. 假设,在Windows Azure上的网站域名是:x. ...
- Windows Azure初体验
目前在IT界,云这个概念的第一意思不再是词典里的解释了.不过它们还是有相同点的——也许确实会酝酿出一块大蛋糕,可也是飘在天上,众神分食之,与我等P民无关.所谓云,不过是网络时代发展到一定阶段的必然产物 ...
- 如何将SQL Server运行到Windows Azure上
从2012年6月6日开始,Windows Azure上一些强大的新功能现在可用于预览,包括新的Windows Azure虚拟机(VM).其中有关Windows Azure虚拟机最强大的一件事是他们利用 ...
- 宣布发布 Windows Azure ExpressRoute,宣告与 Level 3 建立全新的合作伙伴关系并推出关于其他 Azure 服务令人振奋的更新
在我们与世界各地的客户和合作伙伴交谈时,总会听到他们说,希望找到一个提供商帮助他们最大限度地发挥内部部署投资的作用并且能够利用云的灵活性.这是我们构建混合云策略和云操作系统愿景的基本原则.本着我 ...
随机推荐
- 3-WebPack
一. 什么是WebPack WebPack可以看做是模块加载.打包工具. 它所做的事情是 1.分析你的项目结构,找到JavaScript模块以及其它的一些浏览器不能直接运行的拓展语言(Scss,Typ ...
- <转>如何改变讨好型人格 | 你根本不需要讨好任何人
在我过去二十多年的生命里一直是一个“讨好者”. 我总是活在别人对我的期待中,我总是不停的追逐着别人对我的认可,我总是像个卑微的奴才一样去满足别人的需求. 但就和大多数的“讨好者”一样,我们越是寻求别人 ...
- 详解CreateProcess调用内核创建进程的过程
昨天同学接到了腾讯的电面,有一题问到了CreateProcess创建进程的具体实现过程,他答得不怎么好吧应该是, 为了以防万一,也为了深入学习一下,今天我翻阅了好多资料,整理了一下,写篇博客,也算是加 ...
- Difference between Char.IsDigit() and Char.IsNumber() in C#
http://stackoverflow.com/questions/228532/difference-between-char-isdigit-and-char-isnumber-in-c-sha ...
- 头文件为什么要加#ifndef #define #endif
#ifndef 在头文件中的作用 在一个大的软件工程里面,可能会有多个文件同时包含一个头文件,当这些文件编译链接成一个可执行文件时 ,就会出现大量“重定义”的错误.在头文件中实用#ifndef #de ...
- Java Web表达式注入
原文:http://netsecurity.51cto.com/art/201407/444548.htm 0×00 引言 在2014年6月18日@终极修炼师曾发布这样一条微博: 链接的内容是一个名为 ...
- kaili 2.0 虚拟机修改ip
第一步:将虚拟机设置为桥接状态,并勾选上复制物理网络连接状态
- CATransition(过渡)
属性动画只对图层的可动画属性起作用,所以如果要改变一个不能动画的属性(比如图片),或者从层级关系中添加或者移除图层,属性动画将不起作用. 于是就有了过渡的概念.过渡并不像属性动画那样平滑地在两个值之间 ...
- 线程入门之优先级priority
package com.thread; /** * 优先级: * Thread.MAX_PRIORITY:最大优先级 10 * Thread.MIN_PRIORITY:最小优先级 1 * Thread ...
- iOS - UITouch
前言 NS_CLASS_AVAILABLE_IOS(2_0) @interface UITouch : NSObject @available(iOS 2.0, *) public class UIT ...