thinkphp如何省略index.php】的更多相关文章

省略index.php叫做 伪静态化; 共有四个步骤: MariaDB[(none)]: 表示, 目前没有选择/使用 任何数据库. 如果use了数据库, 会提示: MariaDB[mysql]... they are only interested in preserving the power of the privileged. 特权: privilege ['privilidg] 在数据库查询语句中, 只有数据库名, 表名, 列名才不用引号, 而其他数据类型中, 也是根据"字面量"…
ThinkPHP 怎样让URL访问的时候省略 index.php Nginx 服务器配置 修改 nginx.conf 文件 location / { // …..省略部分代码 if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=/$1 last; } } 原来的访问URL: http://serverName/index.php/模块/控制器/操作/[参数名/参数值...] 设置后,我们可以采用下面的方式访问: http://serv…
按照thinkphp手册中来讲,apache服务器下,隐藏thinkphp入口文件有3步: httpd.conf配置文件中加载了mod_rewrite.so模块 AllowOverride None 将None改为 All 把下面的内容保存为.htaccess文件放到应用入口文件的同级目录下: mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-…
1. 在tp3框架的配置文件里,明确指定了路由的格式,这个配置位于thinkPHP文件夹下的conf文件夹里的convention.php中,修改以下字段 'URL_MODEL' => 2, #URL访问模式,可选参数0.1.2.3,代表以下四种模式 2 最好将此字段修改为2,不然容易出问题. 然后再你入口文件同一级的目录下创建一个.htaccess的文件 文件内容如下 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQ…
例如你的原路径是 http://localhost/test/index.php/index/add那么现在的地址是 http://localhost/test/index/add如何去掉index.php呢? 1.httpd.conf配置文件中加载了mod_rewrite.so模块  //在APACHE里面去配置 #LoadModule rewrite_module modules/mod_rewrite.so把前面的警号去掉 2.AllowOverride None 讲None改为 All …
第一种方法: 设置url的重写模式(默认模式是1) 'URL_MODEL' => 2, // URL访问模式,可选参数0.1.2.3,代表以下四种模式: 第二种方法:  使用Apache来进行设置 1.打开配置文件httpd.conf #LoadModule rewrite_module modules/mod_rewrite.so  去掉前面的# 2.在根目录index.php同级下新建一个.htaccess文件 <IfModule mod_rewrite.c> Options +Fo…
Apache:1. httpd.conf配置文件中加载了mod_rewrite.so模块2. AllowOverride None 将None改为 All3. 把下面的内容保存为.htaccess文件放到应用入口文件的同级目录下 <IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUES…
MVC思想: 1. 简单来说, M 即模型, m是Model的第一个字母,它用于管理程序的数据,因此它也是连接我们的PHP程序和数据库的功能.通常在模型类这一块,框架通常会使用ORM(对象关系映射).所谓ORM即把数据库中的表和我们的类对应起来,每一条记录都相当于一个对象,每一个字段都相当于类的一个属性,此外,我们可以在该类中定义一些方法来操作数据库,从而避免我们直接写SQL语句.2.V 即视图,是View的第一个字母,它用于网站数据的展示,它需要前台的界面编写知识,但是编写前台界面和程序开发并…
首先解释一下,这里路由的意思是:系统从URL参数中分析出当前请求的分组.控制器.操作 .另外我的网址根目录是放在article目录下的,Thinkphp主要有下面几种路由形式 1.pathinfo路径形式[默认方式]   →   http://网址/index.php/分组/控制器/操作方法 比如我访问home分组下的index控制器中的hello方法 或者访问add方法 如果直接访问127.0.0.1/article 会默认路由到index控制器的index方法 2.基本get形式  →  …
在上一节中,我主要讲到了如何获取ThinkPHP框架,以及虚拟目录和虚拟主机的配置.准备工作完成之后,就可以利用ThinkPHP去部署项目了. 先在工作目录(D:/zend/workspace)下新建一个market文件夹,用来部署项目,在market文件下再新建一个index.php,作为项目的入口文件.因为我们需要调用ThinkPHP框架,打开自己下载好的ThinkPHP框架文件,将其中的ThinkPHP文件夹(其他的Application.Public等均不需要)复制一份到D:/zend/…
现在对前端的要求越来越高了  基本上身为一个前端人员需要会一种后台语言,于是选择了当下流行的php.因为是自学对我这个不怎么懂代码的人来说还是有点难度的. 1.先看看thinkphp的目录结构 ├─ThinkPHP.php 框架入口文件 (注:这个文件是不能直接执行的只有在项目入口文件中调用才能运行 = =想我当初还对着它点啊点) ├─Common 框架公共文件 ├─Conf 框架配置文件 ├─Extend 框架扩展目录 ├─Lang 核心语言包目录 ├─Lib 核心类库目录 │ ├─Behav…
转自:http://blog.sina.com.cn/s/blog_827ddd950100ulyv.html TP中有不少路径的便捷使用方法,比如模板中使用的__URL__,__ACTION__等,如果你对这些路径不是很明白,用起来说不定就会有这样或那样的问题,抑或出了错也不知道怎么改,现在我们看一下这些路径到底是代表了什么吧!假如你项目首页的URL是:www.test.com/other/Form假如当前模块是:Index假如当前操作是:index那么首页完整的URL:http://www.…
我觉得静态框架这个东西非常奇怪,可能是因为没有研究透它. 我的情况是这样的,我之前做过的一个面向对象没有基于thinkPHP,的项目中用同一套后台静态框架没有问题,但用thinkphp后台的index也显示为空白.修改前我的index.html页面是这样的: <HTML> <HEAD> <TITLE>管理中心 V1.</TITLE> <META http-equiv=Content-Type content="text/html; chars…
ThinkPHP 一.php框架介绍 真实项目开发步骤: 多人同时开发项目,协作开发项目.分工合理.效率有提高(代码风格不一样.分工不好) 测试阶段 上线运行 对项目进行维护.修改.升级(单个人维护项目,十分困难,代码风格不一样) 项目稳定的运行阶段 项目停止运行(旧项目的人员已经全部离职,新人开发新项目) 问题: 1. 多人开发项目,分工不合理,(html   php   mysql) 2. 代码风格不一样,后期维护十分困难 3. 项目生命周期十分短,项目生命没有延续性,造成资源浪费.人员浪费…
thinkphp框架的路径问题 - 总结 (2011-06-21 11:01:28) 转载▼ 标签: thinkphp 框架 路径 杂谈 分类: Php TP中有不少路径的便捷使用方法,比如模板中使用的__URL__,__ACTION__等,如果你对这些路径不是很明白,用起来说不定就会有这样或那样的问题,抑或出了错也不知道怎么改,现在我们看一下这些路径到底是代表了什么吧!假如你项目首页的URL是:www.test.com/other/Form假如当前模块是:Index假如当前操作是:index那…
一. 主要知识点,用PHPExcel导入Excel数据经过这几天测试还是可以,xls,xlsx都可以获取Excel的数据.下载地址:http://phpexcel.codeplex.com/ O.开发思路 1.先把Excel文件上传到服务器,只是为了获取文件的信息$FILES['tmp_name'] 2.通过借助插件获取服务器Excel文件内容$data,先打印看数据是否对着 3.在循环中写入数据库 一.上传Excel文件,使用PHP里自带的上传方法 “\Think\Upload();”,可以很…
原文:thinkphp学习笔记5-模块化设计 1.模块结构 完整的ThinkPHP用用围绕模块/控制器/操作设计,并支持多个入口文件盒多级控制.ThinkPHP默认PATHINFO模式,如下: http://serverName/index.php(或者其他应用入口文件)/模块/控制器/操作/[参数名/参数值...] 应用:由同一个入口文件访问的项目称为一个应用,在完整版的代码中就是Application 模块:一个应用下面可以包含多个模块,每个模块对应独立的目录,在完整版的代码中有Admin,…
ThinkPHP框架 1.解压到www目录下,里面有一个index文件是入口文件,通过修改里面的APP_PATH进入不同的应用 2.ThinkPHP文件夹是核心文件夹,里面东西不要修改,可以查看,比如查看配置文件,复制到从自己的项目配置文件中修改 3.通过入口文件进入应用(如果没有会自动创建),里面主要看Home模块,里面有MVC三个文件夹,主要操作这三个文件夹 控制器定义: 4.在controller(控制器)中新建控制器,命名规则:名Controller.class.php ,打开创建一个类…
一.普通模式 'url_route_on' => false, 二.混合模式 'url_route_on' => true, 'url_route_must'=> false, 三.注册路由规则 配置文件application/route.php进行注册: use think\Route; // 注册路由到index模块的News控制器的read操作 Route::rule('new/:id','index/News/read'); return [ '__pattern__' =>…
环境:centos7.2+lnmp1.3(nginx+php7.0+mysql5.5) 进入服务器配置路径:cd /usr/local/nginx/conf/nginx.conf 修改nginx.conf文件vim nginx.conf,原来的文件内容不变,在最后加上我们需要的对thinkphpurl模式的解析 修改后的nginx.conf文件如下: user www www; worker_processes auto; error_log /home/wwwlogs/nginx_error.…
1.前后台搭建 开发的第一步是搭建前后台系统.搭建前台系统的时候新建了LoginController控制器和登录界面View/Login/index.tpl.模板文件中需要引入js和css文件,这里想通过在配置文件中创建模板变量的方式简化脚本文件的引入,但在创建的过程中遇到了问题. Home/Conf/config.php <?php return array( 'TMPL_PARSE_STRING' => array( '__CSS__' => '__PUBLIC__/Home/css…
一.pathinfo支持方法 1.2版本系统已经自动生成了一个pathinfo的配置文件,但实测不可用,所以我们先找打这个文件并修改其内容,文件路径为:/usr/local/nginx/pathinfo.conf,将内容修改如下: set $path_info ""; #定义变量 $real_script_name,用于存放真实地址 set $real_script_name $fastcgi_script_name; #如果地址与引号内的正则表达式匹配 if ($fastcgi_sc…
1.目录结构 project 应用部署目录 ├─application 应用目录(可设置) │ ├─common 公共模块目录(可更改) │ ├─index 模块目录(可更改) │ │ ├─config.php 模块配置文件 │ │ ├─common.php 模块函数文件 │ │ ├─controller 控制器目录 │ │ ├─model 模型目录 │ │ ├─view 视图目录 │ │ └─ ... 更多类库目录 │ ├─command.php 命令行工具配置文件 │ ├─common.ph…
TP中有不少路径的便捷使用方法,比如模板中使用的__URL__,__ACTION__等,如果你对这些路径不是很明白,用起来说不定就会有这样或那样的问题,抑或出了错也不知道怎么改,现在我们看一下这些路径到底是代表了什么吧!假如你项目首页的URL是:www.test.com/other/Form假如当前模块是:Index假如当前操作是:index那么首页完整的URL:http://www.test.com/other/Form/index.php/Index/index__ROOT__:/other…
1.为什么要学习框架?框架是什么? 简单的说就是为了简单,提高开发的效率.至于什么是框架(一种规范),现在的我还不是很理解,容后再议. 学习框架最重要的就是遵循,按照开发者的意图来使用该框架. 2.thinkPHP是单入口的MVC框架.单入口不是一个个入口文件,而是一个模块对应一个入口文件. 入口文件的绑定: $_GET['m']='模型名称'; $_GET['c']='控制器名称'; 这是thinkPHP3.2.0中的绑定方式,其他版本可能有着不同的绑定方式 3.模块化设计. 在同一个应用目录…
控制器的方法, 要显示的模板默认的跟方法名相同. 也可以不同, 但应该 仍然是对应文件夹下的html模板文件: $this->display('其他的模板html文件名, 不用加html扩展名'); 在windows图形界面下, 可以支持 "/" 和 ""两种路径分隔符, 但是在cmd下, 只能用 "" wamp包括: Apache2, php, mysql , logs lang, www等文件夹, 和一些可执行文件, 如wampserv…
一般的thinkphp框架一般都是单模块开发的,但有时候我们可能需要进行多模块开发,例如添加个后台管理的模块.这次给人讲课,在Tp多模块开发的配置上翻车,感觉很有必要总结下,话不多说,直接上干货. 总结下来 有两种方案可解决 手动配置: 在config.php文件中开启多模块开发模 2.在index模块的同级目录上手动添加admin模块(新建admin文件夹) 3.添加admin.php入口文件 copy在public文件夹下的index.php文件下的内容     从上面我们可以对比index…
fedora23和centos7+ 都是使用的 systemd 来代替sysv 管理系统启动和服务了. 在systemd 中主要包含两个方面的内容, 当打开/etc/inittab 文件时, 会看到: inittab is no longer used, Adding configuration here will have no effect on system. systemd uses 'targets' instead of runlevels. By default, there ar…
在日常开发中,我们主要使用的还是 php 的 内部的 语言本身提供的函数/常量,系统内部数组等. 为了和后面的tp框架提供的 "系统函数.系统常量"相区别,把php提供的东西叫语言函数.语言常量等.这也是不得已的叫法. php的代码可以和html的代码镶嵌在任何地方(注意是任何地方, 只有你想不到的地方... 比如 一个html标签内部的...比如 form action="<?php ... ?>", js中 href="<?php e…
“豪情卷起万重浪,吼吼哈哈-”一学thinkPHP才知道这是个国内研究的php web开发框架,瞬间自豪感如电流一般传遍全身 这就不多不说说 一.控制器 所谓MVC编程,无外乎函数(sometimes类结构),模板,输出处理结果,接收处理请求,模型----说白了就是利用web框架预定义的类,去创建数据库表结构 那么thinkPHP的项目结构如下: 其中public文件夹下的index.php我们不妨理解为网站程序的主入口,他对应的启动了thinkphp内置的一段网站欢迎程序:但public文件夹…