thinkphp每次访问都要经过那个index的入口文件吗?

feng22ge1 2016-07-13 03:12:35
我是初学者,我现在大致了解了它是根据URL来判断执行哪个模块的哪个函数,但是有个疑问,比如他的我的网站根目录是
localhost, thinkphp入口文件是localhost/index.php, 我直接访问入口文件后它根据一系列处理最终执行了IndexAction.class.php里的index方法。 这个我理解,因为从index.php这个入口进去进行了一系列处理。 但是我访问该目录下子文件夹 localhost/home/Login, 它为什么还是知道调用LoginAction.class.php里的Login方法呢? 难道我访问localhost/home/Login它还是走了入口文件? 我一直觉得apache或者nginx是根据url选择对应路径的php脚本解析啊, 那localhost/home/Login这个url他是怎么会走index.php这个入口文件的? 还有我看它源代码有点吃力, 试着看了下,是哪句代码实现根据URL调用相应模块的? 我看到think.class.php里面有个autoload函数
...全文
535 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
土豆3259 2016-07-13
  • 打赏
  • 举报
回复
是的,主入口文件。
xuzuning 2016-07-13
  • 打赏
  • 举报
回复
其实不用想,因为走 index.php 是你指定的 你的 url 重写规则中有: #如果目录存在就直接访问目录不进行RewriteRule RewriteCond %{REQUEST_FILENAME} !-d #如果文件存在,就直接访问文件,不进行下面的RewriteRule.(不是文件或文件不存在就执行重写) RewriteCond %{REQUEST_FILENAME} !-f #所有找不着实际路径的文件,统一交给index.php处理 RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
火鸟集团 2016-07-13
  • 打赏
  • 举报
回复
.........

20,359

社区成员

发帖
与我相关
我的任务
社区描述
“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。PHP语法利用了C、Java和Perl,该语言的主要目标是允许web开发人员快速编写动态网页。
phpphpstorm 技术论坛(原bbs)
社区管理员
  • 开源资源社区
  • phpstory
  • xuzuning
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧