tp5不能訪問index.php的解決辦法:首先找到htaccess文件;然后修改規則內容為“RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]”即可。
本文操作環境:windows7系統、thinkphp v5.1版,DELL G3電腦
tp5不能訪問index.php怎么辦?
關于tp5.1框架定義路由無法訪問的問題以及隱藏入口文件index.php
首先我使用了phpstudy 解析了一個域名 http://kymb.com/ 到 默認tp框架 public 目錄下面 開始訪問使正常的
?
立即學習“PHP免費學習筆記(深入)”;
?
立即學習“PHP免費學習筆記(深入)”;
?
立即學習“PHP免費學習筆記(深入)”;
?
立即學習“PHP免費學習筆記(深入)”;
?
立即學習“PHP免費學習筆記(深入)”;
然后看到route?文件下面有兩個定義好的路由 Route::get('think',?function?()?{ ????return?'hello,ThinkPHP5!'; }); // Route::get('hello/:name',?'index/hello'); 然后我就直接以為是?http://kymb.com/think?就可以訪問了?結果出現了 No?input?file?specified.?文件沒有找到 我就納悶了?因為以前開發項目都是直接這樣訪問(可能由于慣性思維) 果斷回去看了看文檔?路由的定義解析 發現多次提示?需要帶index.php?前綴訪問?才可以的 然后把路徑換成了?http://kymb.com/index.php/think?就可以了 其他路由設置也一樣?都是需要帶著index.php前綴(就是入口文件)
?
立即學習“PHP免費學習筆記(深入)”;
?
但是我又想了一下就是 我們還是希望 域名+模塊/控制器/方法 這樣訪問 就比較美觀吖 然后我查詢了一篇資料 說把 訪問規則重寫一下就可以了 更改一下 .htaccess 文件 <IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f // 原本這一行注釋掉 #RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] // 添加下面一下就可以了 RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1] </IfModule> 這個時候 那么我們想要的訪問路徑就實現了 這里方便記錄一下 怕以后忘記了 一時之間不知道問題出現原來 回來有記錄可尋
《相關推薦:最新的10個thinkphp視頻教程》
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END