ThinkPHP是一款免费、开源、快速、简单、面向对象的轻量级PHP开发框架,遵循Apache2开源协议发布,是为了敏捷Web应用开发和简化企业应用开发而诞生的。本篇教程介绍如何使用云市场镜像快速搭建ThinkPHP框架。

前提条件

使用本教程进行操作前,请确保您已经注册了阿里云账号。如还未注册,请先完成账号注册

背景信息

本教程适用于正在学习PHP或者已基于ThinkPHP框架进行研发的开发人员。

操作步骤

步骤一:购买ThinkPHP框架镜像

完成以下操作,购买ThinkPHP框架镜像:

  1. 单击ThinkPHP框架(含智慧云虚机面板)进入镜像详情页。
  2. 单击立即购买,按提示步骤根据您的实际业务需求购买ECS实例。
  3. 登录ECS管理控制台
  4. 在左侧导航栏,单击实例与镜像 > 实例
  5. 在顶部状态栏处,选择地域。
  6. 实例列表页面,找到目标实例,在IP 地址列获取该实例的公网IP地址。
  7. 在浏览器地址栏中输入公网IP地址,屏幕上会显示提示页面。
  8. 在提示页面,单击获取权限,下载权限文档zhcloud-readme.doc

    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第1张
    权限文档中包含了智慧云虚机面板权限(host)、FTP权限和MySQL数据库权限,请妥善保存。
    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第2张

步骤二:上传应用程序

如果您已经通过ThinkPHP框架完成了自己的应用程序,可以通过FTP上传您的程序。操作步骤如下:

  1. 下载FTP工具。本篇教程以FileZilla FTP为例。下载地址为https://www.filezilla.cn/download/client
  2. 下载FileZilla后,双击filezilla.exe,开始按软件提示安装FileZilla FTP。
  3. 启动FileZilla FTP,在主机用户名密码处分别输入FTP IP地址、FTP账号和FTP密码。相关信息,请参见权限文档zhcloud-readme.doc

    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第3张
  4. 单击快速连接,开始连接FTP。
  5. 将您已经写好的应用程序拉到右边区域即可实现上传。

步骤三:切换PHP脚本适应程序

由于PHP的版本不同所支持的PHP函数也不尽相同。若您的程序对PHP版本有严格要求,您可以通过脚本切换来切换到您需要的PHP版本。若没有严格要求,可跳过此步骤。

  1. 登录智慧云虚机面板 。登录信息,请参见权限文档zhcloud-readme.doc
    • host url智慧云虚机面板的登录地址。
    • host account智慧云虚机面板的登录账号。
    • host password智慧云虚机面板的登录密码。

    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第4张
    登录成功后,如下图所示。
    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第5张
  2. 单击脚本切换 ,选择您需要的PHP版本,单击确定

    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第6张

步骤四:开启pathinfo

使用ThinkPHP框架写的程序一般会用到pathinfo。若您需要开启pathinfo,请按如下步骤操作:

  1. 登录智慧云虚机面板
  2. 单击PATH_INFO,选择您的站点,单击开启按钮。

    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第7张

步骤五:绑定域名

如果您的实例公网IP地址已经完成了域名备案,您可以在智慧云虚机面板上绑定您的域名。

  1. 登录智慧云虚机面板
  2. 单击域名绑定,输入您的域名即可绑定。
    若您想禁止IP访问,删除含有IP地址的这条记录即可。
    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第8张

常见问题:如何解决301重定向问题?

完成以下操作,在智慧云虚机面板写入301重定向的Nginx规则:

  1. 登录智慧云虚机面板
  2. 单击自定义伪静态 > 自定义,写入301重定向的Nginx规则,单击保存

    搭建ThinkPHP框架_建站教程_云服务器 ECS 阿里云技术文档 第9张
    下面以域名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;
      }
      说明 实际使用时,将以上代码中的域名替换为您自己的域名。