ThinkPHP学习笔记(一)ThinkPHP部署


Posted in PHP onJune 22, 2014

已经下载了wampserver,以后有时间试下在本地运行ThinkPHP。

在app/lib/Action/文件夹下可以为每一个模块定义控制器类,一个模块可以包含多个操作方法,当有请求的时候,会从URL参数中解析当前请求的模块和操作。比如定义的默认控制器类IndexAciton.class.php:

<?php
class IndexAction extends Action{
  ptotect function _initialize(){
    header("Content-Type:text/html;charset=utf-8");
  }
  public function index(){
    $this->display();
  }
  public function imit(){
    echo "<h2>Sae服务模拟器功能测试(以下服务在本地也可以运行):</h2>";
  }
}

访问http://localhost/,系统会访问默认的模块(Index)的默认操作(index)。相对的输入http://localhost/Index/imit,系统就会访问默认的模块(Index)的操作方法(imit)。这种URL模式是PATHINFO模式,ThinkPHP的默认格式,还可以在ThinkPHP/Conf/convention.php里设置其他格式,如普通模式、REWRITE模式和兼容模式。

只是笔记,为什么不能设置为仅自己可见呢,我写的乱七八糟都不好意思给人看啊。

URL请求的REWRITE模式,是在PATHINFO模式的基础上添加重写规则的支持,Apache的话,是在入口文件同级处添加.htaccess文件,内容是:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfModule>

只有这样是不行的,还需要开启Apache的rewrite功能。在httpd.conf配置文件中找到LoadModule rewrite_module modules/mod_rewrite.so去掉前面的#,找到AllowOverride None改为AllowOverride All。如此才有效。

PHP 相关文章推荐
PHP strncasecmp字符串比较的小技巧
Jan 04 PHP
phpmyadmin安装时提示:Warning: require_once(./libraries/common.inc.php)错误解决办法
Aug 18 PHP
PHP笔记之:日期函数的使用介绍
Apr 24 PHP
php数据库备份还原类分享
Mar 20 PHP
PHP对接微信公众平台消息接口开发流程教程
Mar 25 PHP
浅析Yii2集成富文本编辑器redactor实例教程
Apr 25 PHP
Laravel中使用FormRequest进行表单验证方法及问题汇总
Jun 19 PHP
PHP实现批量检测网站是否能够正常打开的方法
Aug 23 PHP
浅谈PHP中静态方法和非静态方法的相互调用
Oct 04 PHP
Thinkphp5.0自动生成模块及目录的方法详解
Apr 17 PHP
Yii2 中实现单点登录的方法
Mar 09 PHP
php微信小程序解包过程实例详解
Mar 31 PHP
ThinkPHP的URL重写问题
Jun 22 #PHP
分享一个php 的异常处理程序
Jun 22 #PHP
Yii2使用小技巧之通过 Composer 添加 FontAwesome 字体资源
Jun 22 #PHP
浅析application/x-www-form-urlencoded和multipart/form-data的区别
Jun 22 #PHP
PHP延迟静态绑定示例分享
Jun 22 #PHP
美图秀秀web开放平台--PHP流式上传和表单上传示例分享
Jun 22 #PHP
解决cPanel无法安装php5.2.17
Jun 22 #PHP
You might like
php 中文字符入库或显示乱码问题的解决方法
2010/04/12 PHP
PHP通用检测函数集合
2011/02/08 PHP
PHP使用curl模拟post上传及接收文件的方法
2016/03/04 PHP
PHP查询大量数据内存耗尽问题的解决方法
2016/10/28 PHP
JavaScript 自动完成脚本整理(33个)
2009/10/20 Javascript
javascript整除实现代码
2010/11/23 Javascript
window.addEventListener来解决让一个js事件执行多个函数
2012/12/26 Javascript
js中 关于undefined和null的区别介绍
2013/04/16 Javascript
js图片实时加载提供网页打开速度
2014/09/11 Javascript
NodeJS学习笔记之Connect中间件模块(二)
2015/01/27 NodeJs
JS实现超过长度限制后自动跳转下一款文本框的方法
2015/02/23 Javascript
浅谈JavaScript 的执行顺序
2015/08/07 Javascript
jquery实现标题字体变换的滑动门菜单效果
2015/09/07 Javascript
AngularJS 实现按需异步加载实例代码
2015/10/18 Javascript
JavaScript数组去重的几种方法效率测试
2016/10/23 Javascript
详解Bootstrap各式各样的按钮(推荐)
2016/12/13 Javascript
Centos6.8下Node.js安装教程
2017/05/12 Javascript
浅谈如何使用 webpack 优化资源
2017/10/20 Javascript
安装vue-cli的简易过程
2018/05/22 Javascript
详解Element 指令clickoutside源码分析
2019/02/15 Javascript
jQuery属性选择器用法实例分析
2019/06/28 jQuery
python使用PythonMagick将jpg图片转换成ico图片的方法
2015/03/26 Python
python实现的正则表达式功能入门教程【经典】
2017/06/05 Python
11月编程语言排行榜 Python逆袭C#上升到第4
2017/11/15 Python
Tensorflow环境搭建的方法步骤
2018/02/07 Python
python实现百度语音识别api
2018/04/10 Python
Python控制鼠标键盘代码实例
2020/12/08 Python
CSS3自定义滚动条样式 ::webkit-scrollbar的示例代码详解
2020/06/01 HTML / CSS
微信浏览器取消缓存的方法
2015/03/28 HTML / CSS
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
2016/12/15 HTML / CSS
英国豪华家具和经典家居饰品购物网站:OKA
2020/06/05 全球购物
PHP如何与mysql建立链接
2013/05/05 面试题
实习教师自我鉴定
2013/12/09 职场文书
法学专业毕业生求职信
2014/06/12 职场文书
激励员工的口号
2014/06/16 职场文书
MySQL 如何限制一张表的记录数
2021/09/14 MySQL