thinkphp怎么简短url
本文实例分析了thinkphp的四种url访问方式。分享给大家供大家参考。具体分析如下:
一、什么是MVC
thinkphp的MVC模式非常灵活,即使只有三个中和一个也可以运行。
M -Model 编写model类 对数据进行操作
V -View 编写html文件,页面呈现
C -Controller 编写类文件(UserAction.class.php)
二、ThinkPHP的MVC特点
三、ThinkPHP的MVC对应的目
M 项目目录/应用目录/Lib/Model
V 项目目录/应用目录/Tpl
C 项目目录/应用目录/Lib/Action
四、url访问C (简单了解)
五、url的4种访问方式 (这是重点!!)
1.PATHINFO 模式 --重点 在后面使用非常多,如果想传多个参数可以使用键1/值1/键2/值2方法
http://域名/项目名/入口文件/模块名/方法名/键1/值1/键2/值2
2.普通模式也称为重写模式
http://域名/项目名/入口文件?m=模块名&a=方法名&键1=值1&键2=值2
3.REWRITE重写模式,去掉入口文件便于SEO优化
http://域名/项目名/模块名/方法名/键1/值1/键2/值2
4.兼容模式
http://域名/项目名/入口文件?s=模块名/方法名/键1/值1/键2/值2
如何修改PATHINFO地址中的/改成-在Home/Conf/config.php中
'URL_PATHINFO_DEPR'=>'-',//修改RUL的分隔符,把地址栏的参数部分/换成:http://域名/项目名/入口文件/模块名-方法名-键1-值1-键2-值2
在index.php中开启调用模式,为了在后产模式中不让文件缓存影响开发
define('APP_DEBUG',ture);//如果设置为ture不缓存文件,false则缓存文件
REWRITE模式开启方法
在httpd.conf中查找rewrite_module modules/mod_rewrite.sl 把#去掉重启服务,在入口文件下新建.htaccess.php,重写文件是去掉index.php的意思:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]