1. thinkphp5 現在開啟強制路由,想要傳遞多個參數,做篩選功能的傳參數功能,在route.php,怎麼定義路由
用&連接不同鍵值試試
2. thinkphp 怎樣動態配置路由,怎樣從資料庫調取數據來配置路由
用這個方法: Route::get('detail-<name>-<id>', 'proct/detail');
<name>和<id> 後台自己定義內容
例:域名/detail-xxxx-23
xxxx 從資料庫調取數據
3. thinkphp5配置二級域名
最近有一個項目要將移動端和PC端分離開來,比如訪問xxx.com,展示的是PC端的頁面。而訪問m.xxx.com,展示的是移動端的頁面。
在thinkphp5中可以這樣操作:
首先,在applicationconfig.php修改url_domain_deploy為true,如圖:
其次,在application
oute.php注冊域名部署規則。
其中m是子域名,而mobile是模塊名.這段表示任何以m為子域名的訪問,都會被解析到mobile模塊。
如果是在本地配置,要在hosts中添加
另外:
在apache或nginx中要配置兩個虛擬主機,一個域名為xxx.com,另一個域名為m.xxx.com。根目錄都指向public文件夾,但兩個的埠號不能相同。
參考: https://www.kancloud.cn/manual/thinkphp5/118039
4. 關於thinkphp配置路由無效果的解決方案
1、打開「config.php」,找到'url_route_on',改為true
2、打開「route.php」,例如:「www.hyxx.com/Index.php/api/user/index/id/2」 改為「api.hyxx.com/user/2」(api.hyxx.com為之前設置的二級域名)。那麼就在return中寫成 '/user/[:index]' => ['/Index.php/api/user/index/id/2',['method'=>'get']],
例如:「www.hyxx.com/Index.php/api」改為「api.hyxx.com」.。就寫成 ' '=>['/index.php/api',['method'=>'get']],
裡面的請求方式,自己去試探。
5. ThinkPHP怎麼實現偽靜態
1、實現偽靜態方法:
1)隱藏入口文件:http://doc.thinkphp.cn/manual/hidden_index.html
2)結合使用URL路由:http://doc.thinkphp.cn/manual/url_route.html
3)配置偽靜態後綴名:HTML_FILE_SUFFIX => '';
上面三個都用上,基本都OK了!當然,還可以通過伺服器重寫URL
2、設置讓地址欄不能訪問文件夾:
1)每個文件夾添加一個index.html空文件(因伺服器默認的首頁而異同),假如默認首頁是 index.html 那就 添加index.html
2)也可以通過伺服器配置目錄訪問許可權
6. thinkphp網站程序模板在哪個文件下
一般在 application 下,裡面會有 mole ,在往裡面才是 controller model 和view,view即是存放模板的目錄。
7. thinkphp開發的問題,高手進
這個問題可以劃分到【路由】問題上,
通過定義路由規則,可以實現提出的效果。先看一下路由規則的定義:
Route::rule(『路由表達式』,『路由地址』,『請求類型』,『路由參數(數組)』,『變數規則(數組)』);
所以,可以這樣試一下(我假設video/id/12.html是index模塊下Videos控制器下的video操作)
Route::rule('video/cat_id/:id','index/Videos/video');
對了,route.php文件在app的根目錄里,添加以上路由規則,如果不對,可按照這個思路多測試幾下