我使用的是 apache + phalcon(PHP框架),配置了框架的路由規(guī)則。訪問的時(shí)候既能透過資料夾路徑直接訪問,也能t透過路由規(guī)則匹配訪問,我想弄清楚apache怎麼處理這些請求的,底層的實(shí)作原理是什麼?
人生最曼妙的風(fēng)景,竟是內(nèi)心的淡定與從容!
訪問的時(shí)候既能透過資料夾路徑直接訪問,也能t透過路由規(guī)則匹配訪問。我想問apache分發(fā)請求的時(shí)候,是按照什麼順序?
在這兩種情況中,並不存在分發(fā)請求的問題,因?yàn)檫@本身就是兩個(gè)不一樣的請求。
對於路由規(guī)則的這個(gè)請求來說,Apache會(huì)先到專案根目錄下尋找 .htaccess
配置文件,找到之后讀取其中的信息。在本項(xiàng)目中, .htaccess
中寫的應(yīng)該是非靜態(tài)文件全部指向index.php
。
回到剛才你的問題:
透過資料夾路徑直接存取說明Apache找到了這個(gè)“靜態(tài)檔案”,就是那個(gè)目標(biāo)php檔案。
透過路由規(guī)則匹配的URL訪問,Apache會(huì)發(fā)現(xiàn)這個(gè)靜態(tài)檔案不存在,就會(huì)把請求指向index.php
,這時(shí)候請求就由PHP程式碼接管,去匹配路由規(guī)則,處理頁面。