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手册及PHP编程标准
Dec 17 PHP
PHP中使用数组实现堆栈数据结构的代码
Feb 05 PHP
PHP连接局域网MYSQL数据库的简单实例
Aug 26 PHP
php后门URL的防范
Nov 12 PHP
使用openssl实现rsa非对称加密算法示例
Jan 24 PHP
php 模拟 asp.net webFrom 按钮提交事件实例
Oct 13 PHP
android上传图片到PHP的过程详解
Aug 03 PHP
深入讲解PHP的对象注入(Object Injection)
Mar 01 PHP
php实现用户登陆简单实例
Apr 04 PHP
PHP用函数嵌入网站访问量计数器
Oct 27 PHP
PHP创建XML接口示例
Jul 04 PHP
基于laravel where的高级使用方法
Oct 10 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
《Re:从零开始的异世界生活》剧情体验,手游新作定名
2020/04/09 日漫
PHP中使用CURL获取页面title例子
2015/01/07 PHP
微信access_token的获取开发示例
2015/04/16 PHP
PHP使用SOAP扩展实现WebService的方法
2016/04/01 PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
2017/10/17 PHP
PHP实现git部署的方法教程
2017/12/19 PHP
jquery 日期分离成年月日的代码
2010/05/14 Javascript
JS对外部文件的加载及对IFRMAME的加载的实现,当加载完成后,指定指向方法(方法回调)
2011/07/04 Javascript
Ajax搜索结果页面下方的分页按钮的生成
2012/04/05 Javascript
3kb jQuery代码搞定各种树形选择的实现方法
2016/06/10 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
JavaScript仿微博输入框效果(案例分析)
2016/12/06 Javascript
微信小程序之仿微信漂流瓶实例
2016/12/09 Javascript
分享bootstrap学习笔记心得(组件及其属性)
2017/01/11 Javascript
作为老司机使用 React 总结的 11 个经验教训
2017/04/08 Javascript
JavaScript中正则表达式使数字、中文或指定字符高亮显示
2017/10/31 Javascript
新手必须知的Node.js 4个JavaScript基本概念
2018/09/16 Javascript
手把手教你如何编译打包video.js
2020/12/09 Javascript
[02:12]2019完美世界全国高校联赛(春季赛)报名开启
2019/03/01 DOTA
[52:02]DOTA2-DPC中国联赛 正赛 Phoenix vs Dragon BO3 第二场 2月26日
2021/03/11 DOTA
Python中zfill()方法的使用教程
2015/05/20 Python
python实现随机森林random forest的原理及方法
2017/12/21 Python
pyqt5实现绘制ui,列表窗口,滚动窗口显示图片的方法
2019/06/20 Python
python实现猜数字游戏
2020/03/25 Python
在Python中使用turtle绘制多个同心圆示例
2019/11/23 Python
Python异步编程之协程任务的调度操作实例分析
2020/02/01 Python
如何利用Python动态模拟太阳系运转
2020/09/04 Python
pycharm2020.2 配置使用的方法详解
2020/09/16 Python
CSS3模拟IOS滑动开关效果
2016/09/28 HTML / CSS
美国著名童装品牌:OshKosh B’gosh
2016/08/05 全球购物
社区党总支书记先进事迹材料
2014/01/24 职场文书
关于梦想的演讲稿
2014/05/05 职场文书
中班下学期个人工作总结
2015/02/12 职场文书
七年级思品教学反思
2016/02/20 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书
CSS3 制作精美的定价表
2021/04/06 HTML / CSS