ThinkPHP在新浪SAE平台的部署实例


Posted in PHP onOctober 31, 2014

本文实例讲述了ThinkPHP在新浪SAE平台的部署方法。分享给大家供大家参考。具体实现方法如下:

ThinkPHP自从thinkphp3.0版本开始提供了SAE平台支持,并具备众多特性,支持本地化开发和调试以及部署切换,让thinkphper轻松过渡到SAE开发。

一、准备工作:

1、您需要具备SAE的账号,如果您没有该账号,请到 SAE官方网站申请。

2、自己开发或者找一个基于thinkphp3.12开发的程序,本次测试使用的是博客程序WBlog3.1.3版本,没有的可以点击此处本站下载。

3、到ThinkPHP官方网下载3.12 版本的SAE引擎Engine,并把它放到核心包的扩展包里,SAE引擎在thinkphp包的位置:ThinkPHP\Extend\Engine

二、实现步骤:

1、创建一个应用,http://127.0.0.1/如图所示:

ThinkPHP在新浪SAE平台的部署实例

2、创建一个版本,这里我埴1,如图所示:

ThinkPHP在新浪SAE平台的部署实例

3、上传代码包,完整上传代码包后如图所示:

ThinkPHP在新浪SAE平台的部署实例

4、创建数据库。打开数据库的路径是w3note »  MySQL » 服务管理 »管理MySQL,我创建的数据库名称为WBlog,然后把数据表sql文件导入

5、配置前后台的项目入口文件,方法大同小异。下面是前台项目入口文件index.php配置

<?php 

  //开启调试模式 

   define('APP_DEBUG',true); 

   //前台目录 

   define('APP_PATH', './W3note/'); 

   define('W3CORE_PATH','./ThinkPHP'); 

   require W3CORE_PATH.'/Extend/Engine/Sae.php';//加载SAE引擎文件

6、数据库文件配置
在数据库建表后,数据库文件的配置,如DB_HOST、DB_USER、DB_PWD和DB_NAME的配置如下所示,似乎是通用的

<?php 

// +---------------------------------------------------------------------- 

// | WBlog 

// +---------------------------------------------------------------------- 

// | Copyright (c) 2008 http://www.w3note.com All rights reserved. 

// +---------------------------------------------------------------------- 

// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) 

// +---------------------------------------------------------------------- 

// | Author: 网菠萝果 

// +---------------------------------------------------------------------- 

// $Id$ 

if (!defined('W3CORE_PATH')) exit(); 

return array( 

    'DB_TYPE'=>'mysql', 

    'DB_HOST'=>SAE_MYSQL_HOST_M, 

    'DB_USER'=>SAE_MYSQL_USER, 

    'DB_PWD'=>SAE_MYSQL_PASS,  

    'DB_NAME'=>SAE_MYSQL_DB, 

    'DB_PREFIX'=>'wb_', 

    'RBAC_ROLE_TABLE'=>'wb_role', 

    'RBAC_USER_TABLE'=>'wb_role_user', 

    'RBAC_ACCESS_TABLE'=>'wb_access', 

    'RBAC_NODE_TABLE'=>'wb_node', 

    'KEYCODE'=>'gfgP5o', 

); 

?>

到这里似乎已经完成了,但是还要注意以下两点。

1、SAE严格区分大小写

如路径http://127.0.0.1/Public/Css/style.css 中的Css改为css样式文件就加载错误。不过在本地测试则没有出错。

2、SAE URL路由隐藏index.php

如果你在本地的URL 如http://127.0.0.1/WBlog/blog 隐藏index.php,在SAE则无法访问。原因是
SAE不支持.htaccess文件,但我们可以使用SAE提供的AppConfig服务实现伪静态。
在你项目的根目录config.yaml文件(一般会自动生成,没有的自己建吧),加上如下代码:
handle:
- rewrite: if(!is_dir() && !is_file() && path~"^(.*)$") goto "index.php/$1"
这样就可以隐藏入口了。

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

PHP 相关文章推荐
PHP中实现图片的锐化
Oct 09 PHP
特详细的PHPMYADMIN简明安装教程
Aug 01 PHP
PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
Aug 11 PHP
PHP中$_SERVER的详细参数与说明介绍
Oct 26 PHP
PHP中实现生成静态文件的方法缓解服务器压力
Jan 07 PHP
PHP制作图形验证码代码分享
Oct 23 PHP
WordPress中调试缩略图的相关PHP函数使用解析
Jan 07 PHP
php利用递归实现删除文件目录的方法
Sep 23 PHP
Yii框架引用插件和ckeditor中body与P标签去除的方法
Jan 19 PHP
php将html转为图片的实现方法
May 19 PHP
bindParam和bindValue的区别以及在Yii2中的使用详解
Mar 12 PHP
php获得刚插入数据的id 的几种方法总结
May 31 PHP
封装ThinkPHP的一个文件上传方法实例
Oct 31 #PHP
ThinkPHP无限级分类原理实现留言与回复功能实例
Oct 31 #PHP
ThinkPHP控制器间实现相互调用的方法
Oct 31 #PHP
ThinkPHP上使用多说评论插件的方法
Oct 31 #PHP
让ThinkPHP支持大小写url地址访问的方法
Oct 31 #PHP
set_exception_handler函数在ThinkPHP中的用法
Oct 31 #PHP
php使用fopen创建utf8编码文件的方法
Oct 31 #PHP
You might like
php Smarty初体验二 获取配置信息
2011/08/08 PHP
关于PHP中字符串与多进制转换函数的实例代码
2016/11/03 PHP
PHP实现对文件锁进行加锁、解锁操作的方法
2017/07/04 PHP
php中yii框架实例用法
2020/12/22 PHP
JavaScript面向对象之Prototypes和继承
2012/07/12 Javascript
jQuery之日期选择器的深入解析
2013/06/19 Javascript
JavaScript判断文件上传类型的方法
2014/09/02 Javascript
JavaScript删除指定子元素代码实例
2015/01/13 Javascript
浅谈JavaScript 中有关时间对象的方法
2016/08/15 Javascript
jquery事件绑定解绑机制源码解析
2016/09/19 Javascript
Bootstrap源码解读导航(6)
2016/12/23 Javascript
Node.js利用debug模块打印出调试日志的方法
2017/04/25 Javascript
npm 更改默认全局路径以及国内镜像的方法
2018/05/16 Javascript
vue里面使用mui的弹出日期选择插件实例
2018/09/16 Javascript
VUE v-for循环中每个item节点动态绑定不同函数的实例
2018/09/26 Javascript
[06:38]DOTA2怒掀电竞风暴 2013Chinajoy
2013/07/27 DOTA
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
Python CSV模块使用实例
2015/04/09 Python
使用C语言扩展Python程序的简单入门指引
2015/04/14 Python
好用的Python编辑器WingIDE的使用经验总结
2016/08/31 Python
Python三级目录展示的实现方法
2016/09/28 Python
Python3实现的反转单链表算法示例
2019/03/08 Python
python实现的登录与提交表单数据功能示例
2019/09/25 Python
tensorflow实现在函数中用tf.Print输出中间值
2020/01/21 Python
Python for循环搭配else常见问题解决
2020/02/11 Python
python中常见错误及解决方法
2020/06/21 Python
通过CSS3的object-fit来调整图片适配尺寸的技巧简介
2016/02/27 HTML / CSS
写一个用矩形法求定积分的通用函数
2012/11/08 面试题
租赁意向书范本
2014/04/01 职场文书
授权委托书样本
2014/04/03 职场文书
司法局火灾防控方案
2014/06/05 职场文书
税务干部群众路线教育实践活动对照检查材料
2014/09/20 职场文书
教导主任个人总结
2015/03/03 职场文书
社区低保工作总结2015
2015/07/23 职场文书
《自己的花是让别人看的》教学反思
2016/02/19 职场文书
基于Go语言构建RESTful API服务
2021/07/25 Golang