一、問題原因
當(dāng)我們在頁面中加入路徑時,例如:
<link>
如果發(fā)現(xiàn)頁面中未加載樣式表,則可能是由于路徑設(shè)置有誤或無法訪問。可能是由于“__PUBLIC__”別名在thinkphp框架中未正確設(shè)置導(dǎo)致的。
“__PUBLIC__”這個路徑別名指的是應(yīng)用程序的公共文件夾路徑,它位于應(yīng)用程序的根目錄下。若該路徑別名未正確設(shè)置,則可能無法訪問樣式表。下面讓我們探討一下應(yīng)如何正確地設(shè)置“__PUBLIC__”路徑的別名。
立即學(xué)習(xí)“PHP免費(fèi)學(xué)習(xí)筆記(深入)”;
二、解決方案
在設(shè)置“__PUBLIC__”這個路徑別名時,需要考慮三個方面:應(yīng)用程序在服務(wù)器上的位置、URL地址的配置、應(yīng)用程序文件路徑的配置。
-
應(yīng)用程序在服務(wù)器上的位置
應(yīng)用程序的根目錄應(yīng)該位于Web服務(wù)器的文檔根目錄下,這樣才能保證所有的文件都能夠被訪問到。
-
URL地址的配置
通過URL地址,可以訪問到應(yīng)用程序的各個部分。因此,需要正確配置URL地址,才能保證路徑別名的正確訪問。應(yīng)用程序的config.php文件是ThinkPHP框架中URL配置的主要位置。你可以在config.php中配置URL:
'URL_MODEL'?=>?2, 'URL_HTML_SUFFIX'?=>?'.html', 'URL_CASE_INSENSITIVE'?=>?true, 'URL_PATHINFO_FETCH'?=>?'ORIG_PATH_INFO,REDIRECT_PATH_INFO,REDIRECT_URL' 'URL_ROUTER_ON'?=>?true,
各個配置項的含義,可以自行查閱ThinkPHP框架的官方文檔。
-
應(yīng)用程序文件路徑的配置
應(yīng)用程序中各個文件的路徑別名需要被正確配置。例如,“__PUBLIC__”這個路徑別名一般指向“/public”文件夾,而“__ROOT__”這個路徑別名則指向應(yīng)用程序的根目錄。如果這些路徑別名沒有被正確配置,就會導(dǎo)致文件無法被訪問。