ThinkPHP5.0---------URL和路由

一、入口文件

public下有个.htaccess更改名或者注释


ThinkPHP5.0---------URL和路由
ThinkPHP5.0---------URL和路由

这样的话必须带入口文件进行访问了

ThinkPHP5.0---------URL和路由
默认是允许带,也可以不带,比较人性化ThinkPHP5.0---------URL和路由
修改完之后,就必须得带index.php了 ,不然找不到

二、绑定模块

当我们在当前目录下有一个index.php,如果我们正常情况下,我们默认访问的是index模块下的Index控制器下的index方法。如果想简化路由的写法的话,有两种方式。
①在public\index.php中添加
ThinkPHP5.0---------URL和路由
ThinkPHP5.0---------URL和路由
②创建api.php文件以及相应的模块

如果我的网站开发给第三方,那么我肯定不期望第三方访问我的index模块和admin模块,这样我们只需要在public/api.php中绑定api模块,这样我们访问api.php直接访问api模块,别的模块访问不了。

在public\api.php中写入

ThinkPHP5.0---------URL和路由

ThinkPHP5.0---------URL和路由
默认访问的index/controller/index中的index方法

在thinkphp/convention.php中有一个auto_bind_module,我们将它拷贝到应用配置文件中,它默认是false,我们现在给它修改成true

ThinkPHP5.0---------URL和路由

之后在app目录下创建指定模块

ThinkPHP5.0---------URL和路由

ThinkPHP5.0---------URL和路由

ThinkPHP5.0---------URL和路由
这样我们就访问到了api中的index方法

三、路由

ThinkPHP5.0---------URL和路由

像这样的方法默认是这么访问的

xin.com/admin/index/info/id/2

如果我们想将当期的访问简化,变成这样xin.com/news/5.html,这里我们就需要引入路由的概念。如果我们想起用路由,就需要进行配置。

首先打开thinkphp/convention.php找到url_route_on和url_route_must,将其拷贝到我们的应用配置conf\config.php,

ThinkPHP5.0---------URL和路由

然后我们在conf文件夹下创建一个route.php文件,也就是路由配置,在里边写一下访问的规则。

url_route_must 默认是false,不强制使用路由。如果改为true的话,那么就必须配置路由而且得使用它,再用

xin.com/admin/index/info/id/2这种方式的话的就会报错
在route.php中添加
ThinkPHP5.0---------URL和路由

我们就可以使用xin.com/news/2.html |xin.com/news/2 访问到


如果事与愿违,那么上天一定另有安排。