支持切换到命令行访问,如果切换到命令行模式下面的访问规则是:

#### >php.exe index.php(或者其它应用入口文件) 模块/控制器/操作/[参数名/参数值…]

可以看到,无论是URL访问还是命令行访问,都采用PATH_INFO访问地址,其中PATH_INFO的分隔符是可以设置的。

注意:5.0取消了URL模式的概念,并且普通模式的URL访问不再支持,但参数可以支持普通方式传值,例如:

如果不支持PATHINFO的服务器可以使用兼容模式访问如下:

#### …]

默认情况下,URL是不区分大小写的,也就是说 URL里面的模块/控制器/操作名会自动转换为小写,控制器在最后调用的时候会转换为驼峰法处理。

例如:

如果访问下面的地址

  1. http://localhost/index.php/Index/BlogTest/read
  2. // 和下面的访问是等效的

在这种URL不区分大小写情况下,如果要访问驼峰法的控制器类,则需要使用:

  1. // 关闭URL中控制器和操作名的自动转换
  2. 'url_convert' => false,

一旦关闭自动转换,URL地址中的控制器名就变成大小写敏感了,例如前面的访问地址就要写成:

但是下面的URL访问依然是有效的:

  1. http://localhost/index.php/Index/blog_test/read

下面的URL访问则无效:

需要注意:路由规则中定义的路由地址是按照控制器名的实际名称定义(区分大小写)。

在ThinkPHP5.0中,出于优化的URL访问原则,还支持通过URL重写隐藏入口文件,下面以Apache为例说明隐藏应用入口文件index.php的设置。

  1. <IfModule mod_rewrite.c>
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-d
  4. RewriteCond %{REQUEST_FILENAME} !-f

更多其它环境的隐藏入口文件参考后面的 URL重写