要从网络服务器访问任何页面,我熟悉两种方法,如下所示
http://127.0.0.1/joomla30/efinanace/currently-no-jobs-available/index.php
http://127.0.0.1/joomla30/efinanace/index.php?value=currently-no-jobs-available
但以下方式对我来说是新的,即index.php后跟路径
http://127.0.0.1/joomla30/index.php/efinanace/currently-no-jobs-available
我的问题是,index.php如何解释上述链接或服务器如何确定用户需要哪个页面。 。 。 。在评价此问题之前,请回答。
答案 0 :(得分:0)
第一种方法需要一个.htaccess文件,它实际上重写了后一种格式的链接。在后一种格式中,系统将调用index.php以开始加载页面。 index.php
之后的所有内容都被解析为查询字符串的一部分,在/
上拆分,然后路由以找出您想要的页面。
实际路由基本上从index.php之后的url左侧开始,并尝试将其与菜单别名匹配。 (所以在你的情况下,它会查找带有别名efinanace的菜单项。找到它,它会查找名为currently-no-jobs-available
的项目,以使用你的例子。)
一旦它有一个菜单项(并且不匹配,它只使用默认菜单项)。然后它调用该菜单项的组件,并将查询字符串的其余部分传递给该组件的router.php文件(应该在组件的基础中找到)。然后,该文件的任务是根据查询字符串确定组件应该做什么。
显然,所有这些都发生了很多事情,但这应该给你一个基本的概述。