ThinkPHP是一款免费、开源、快速、简单、面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,是为了敏捷Web应用开发和简化企业应用开发而诞生的。本篇教程介绍如何使用云市场镜像快速搭建ThinkPHP框架。
前提条件
- 已注册阿里云账号。如还未注册,请先完成账号注册。
- 如需用户通过域名访问您的站点,请确保您已备案域名。如果域名没有备案,购买ECS实例后,请访问阿里云备案中心,进行备案。
- 已在安全组中添加安全组规则并放行21/21、3306/3306、30000/30010、8081/8081及1777/1777端口。具体操作请参见添加安全组规则。
背景信息
本教程适用于正在学习PHP或者已基于ThinkPHP框架进行研发的开发人员。
操作步骤
使用云市场镜像快速搭建ThinkPHP框架的操作步骤如下:
- 步骤一:购买ThinkPHP框架镜像
- 步骤二:上传应用程序
- 步骤三:切换PHP脚本适应程序
- 步骤四:开启pathinfo
- 步骤五:绑定域名
步骤一:购买ThinkPHP框架镜像
完成以下操作,购买ThinkPHP框架镜像:
1.单击ThinkPHP框架(含智慧云虚机面板)进入镜像详情页。您可以在镜像详情页获取镜像信息和使用指南。
2.单击立即购买。
3.在自定义购买页,镜像区域已自动设置为您购买的镜像。根据页面提示,完成配置项并购买ECS实例。配置时需注意:
- 为实例分配公网IPv4地址。
- 选择前提条件中已配置的安全组。
- 其他配置您可以按需选择。具体操作请参见使用向导创建实例。
4.获取ECS实例的公网IP地址。
a.登录ECS管理控制台。
b.在左侧导航栏,选择实例与镜像 > 实例。
c.在顶部菜单栏处,选择目标ECS实例所在地域。
d.找到目标ECS实例,在IP 地址列获取该实例的公网IP地址。
5.在浏览器地址栏中输入公网IP地址并回车。
6.在提示页面,单击获取权限,下载权限文档zhcloud-readme.doc。
权限文档中包含了智慧云虚机面板权限(host)、FTP权限和MySQL数据库权限,请妥善保存。
步骤二:上传应用程序
如果您已经通过ThinkPHP框架完成了自己的应用程序,可以通过FTP上传您的程序。操作步骤如下:
1.下载FTP工具。本篇教程以FileZilla FTP为例,通过访问FileZilla中文网,下载FileZilla客户端。
2.下载FileZilla后,双击filezilla.exe,开始按软件提示安装FileZilla FTP。
3.启动FileZilla FTP,在主机、用户名和密码处分别输入FTP IP地址、FTP账号和FTP密码。相关信息,请参见权限文档zhcloud-readme.doc。
4.单击快速连接,开始连接FTP。
5.将您已经写好的应用程序拉到右边区域即可实现上传。
步骤三:切换PHP脚本适应程序
由于PHP的版本不同所支持的PHP函数也不尽相同。若您的程序对PHP版本有严格要求,您可以通过脚本切换来切换到您需要的PHP版本。若没有严格要求,可跳过此步骤。
1.登录智慧云虚机面板。
登录信息,请参见权限文档zhcloud-readme.doc。
host url
:智慧云虚机面板的登录地址。host account
:智慧云虚机面板的登录账号。host password
:智慧云虚机面板的登录密码。
登录成功后,如下图所示。
2.单击脚本切换,选择您需要的PHP版本,单击确定。
步骤四:开启pathinfo
使用ThinkPHP框架写的程序一般会用到pathinfo。若您需要开启pathinfo,请按如下步骤操作:
1.登录智慧云虚机面板。
2.单击PATH_INFO,选择您的站点,单击开启按钮。
步骤五:绑定域名
如果您已经完成了域名备案,您可以在智慧云虚机面板上绑定您的域名。
1.登录智慧云虚机面板。
2.单击域名绑定,输入您的域名即可绑定。如果您想禁止IP访问,删除含有IP地址的这条记录即可。
常见问题:如何解决301重定向问题?
完成以下操作,在智慧云虚机面板写入301重定向的Nginx规则:
1.登录智慧云虚机面板。
2.单击自定义伪静态 > 自定义,写入301重定向的Nginx规则,单击保存。
下面以域名yjcom.com
为例写入301重定向的Nginx规则。
方法A:不使用www.yjcom.com
域名访问网站时都301重定向到www.yjcom.com
。
if ($host != 'www.yjcom.com' ) { rewrite ^/(.*)$ http://www.yjcom.com/$1 permanent; }
方法B:使用yjcom.com
域名访问网站时才301重定向到www.yjcom.com
。
if ($host = 'yjcom.com' ) { rewrite ^/(.*)$ http://www.yjcom.com/$1 permanent; }
说明: 实际使用时,将以上代码中的域名替换为您自己的域名。