在瀏覽器中訪問http://127.0.0.1/thinkphp5/public/index.php 顯示效果如下圖所示:

我們簡單解釋一下:
在url中,輸入 http://127.0.0.1/thinkphp5/public/index.php 相當于我們訪問了d:/xampp/htdocs/thinkphp5/public/index.php這個文件。
上述問題的逆否命題仍然成立:
如果我們想訪問d:/xampp/htdocs/thinkphp5/public/index.php這個文件,我們需要在瀏覽器的地址中輸入: http://127.0.0.1/thinkphp5/public/index.php 。
* * * * *
### 小總結:
是的,你猜的沒錯:
`http://127.0.0.1` = `d:/xampp/htdocs`
就這么簡單。
只要這個文件存在htdocs中,我們就能通過url來訪問。
在thinkphp5中,無論我們怎么對項目進行更改,最終我們訪問的文件只有一個,即d:/xampp/htdocs/thinkphp5/public/index.php。我們把這種只需要通過訪問一個(單個)文件就能實現各種功能需求的設計,叫做『單入口模式』。
> 官方開發手冊: http://www.hmoore.net/manual/thinkphp5/125729
<div class="alert alert-success">在教程中,當涉及到ThinkPHP5的知識點時,我們會給出相應的官方開發手冊的鏈接。前期我們看官方開發手冊可能會有點暈。這只是由于我們的開發經驗少而已,并不能說明任何問題。在這我們之所以給出相關鏈接,目的僅在于幫助大家更好地將實際項目與開發手冊聯系在一起。</div>
當然了,訪問這個入口文件的地址為: http://127.0.0.1/thinkphp5/public/index.php 。
在學習thinkphp的過程中,我們會天天和這個url打交道。
有時候,我們也會使用 http://127.0.0.1/thinkphp5/public 或者 http://127.0.0.1/thinkphp5/public/ <br />
來代替 http://127.0.0.1/thinkphp5/public/index.php ,它們的作用是相同的,都在訪問那個唯一的入口文件。
* * * * *
###補充知識(選學):
除了上述URL,我們還可以在瀏覽器中輸入以下URL以達到訪問“d:/xampp/htdocs/thinkphp5/public/index.php”的目的。
http://localhost/thinkphp5/public
http://localhost/thinkphp5/public/
http://localhost/thinkphp5/public/index.php
**【注意事項】:**
1. 127.0.0.1是一個服務器的地址。服務器與客戶機都是計算機,它之所以叫服務器,是由于它上面安裝了一些特定的軟件,我們為了與普通的計算機相區分,給它起了個容易記的名字而已。
2. 127.0.0.1是服務器的IP地址,也可以說是它的身份證號碼。往往身份證號碼不太容易記,我們愛給他們起各種名字。那么localhost就是它的名字了。其實baidu.com、taobao.com等,都是服務器的名字。我們可以在運行中使用ping baidu.com,來看它們的身份證號是什么。在計算機網絡中,我們把它們叫做域名與IP地址。有一個東西叫DNS,專門用來將名字與身份證號進行相關聯。
3. 我們訪問一個服務器,既可以使用域名,也可以使用IP地址。IP地址一般是運營商給的(電信、聯通都是運營商,它們各自有一個特別大的局域網);域名呢,是域名中介服務商給的(比如萬網,godaddy)。所以一臺計算機,有沒有IP地址,需要看運營商;有沒有域名呢,需要看我們有沒有注冊。當然了,有域名的前提是你必須先有個IP地址。
4. 由于127.0.0.1 和 localhost,一個是IP地址,另一個是域名,所以用哪個訪問效果都一樣。這就是上述四種訪問方式中,用前兩種和用后兩種的效果相同的原因。
5. 有沒有index.php效果也是相同的,這是因為xampp做了一個設定,確切的說是apache做了一個設定。這個設定是說:如果你不寫具體訪問哪個文件,那么,它就替我們默認先找index.html文件,如果找到就訪問。如果找不到,那么就繼續找index.php。在這里,先找public文件夾下沒有index.html文件,結果沒有,那么接著找index.php,結果找到了,也就訪問了index.php。
6. 127.0.0.1或是localhost可以認為對應的是“d:\xampp\htdocs”這個目錄中的文件夾。想訪問這個文件夾中的哪個文件,就對應輸入這個文件所在的路徑就可以了。在實際的生產環境中,我們必須固定用戶進行訪問時能夠訪問到的文件夾。如果我們不固定,那么服務器上所有的文件,無論是我們想展示給用戶的,還是我們不想展示給用戶的,都會被用戶瀏覽并查看,顯然,這并不是我們想看到的。
7. 項目路徑中最好不要出現以中文命名的文件,否則可能會因為操作系統、源碼、用戶數據等信息的字符編碼不一致,導致項目出現錯誤。
- 序言
- 第一章 準備知識
- 第一節:XAMPP
- 第二節:NAVICAT
- 第三節:GIT
- 第二章 HelloWorld
- 第一節:下載THINPHP5.0
- 第二節:啟動xampp
- 第三節:hello thinkphp
- 第四節:Hello world
- 第五節:MCA
- 第六節:單引號與雙引號
- 第三章 教師管理
- 第一節:新建數據庫
- 第二節:CURD之R 讀數據
- 3.2.1 時序圖
- 3.2.2 連接數據庫
- 3.2.3 直接讀取數據
- 3.2.4 間接讀取數據
- 3.2.5 使用V層顯示數據
- 3.2.6 引入bootstrap
- 3.2.7 加入bootstrap樣式
- 第三節:CURD之 C 增加數據
- 3.3.1 插入數據
- 3.3.2 表單傳值
- 3.3.3 存儲表單數據
- 3.3.4 自動時間戳
- 3.3.5 增加驗證
- 第四節:CURD之 D 刪除數據
- 3.4.1 什么是關鍵字
- 3.4.2 刪除數據
- 3.4.3 定制刪除鏈接
- 3.4.4 完善刪除
- 第五節:CURD之 U 更新數據
- 3.5.1 讀取數據
- 3.5.2 展示數據
- 3.5.3 修改數據
- 3.5.4 傳遞數據
- 3.5.5 接收數據
- 3.5.6 更新數據 方法一
- 3.5.7 更新數據 方法二
- 第六節:銜接各個action & 重構代碼
- 3.6.1 index action
- 3.6.2 add action
- 3.6.3 insert action
- 3.6.4 delete action
- 3.6.5 edit action
- 3.6.6 update action
- 第七節:分頁
- 3.7.1 調用內置分頁
- 3.7.2 select與paginate(選學)
- 3.7.3 分頁原理(選學)
- 3.7.4 調用page(選學)
- 第八節:模糊查詢
- 3.8.1 增加查詢
- 3.8.2 完善查詢
- 第四章 登錄與注銷
- 第一節:cookie 與 session
- 第二節:靜態方法
- 第三節:規劃URL跳轉
- 第四節:登錄
- 4.4.1 登錄流程
- 4.4.2 index action
- 4.4.3 login action
- 4.4.4 引入M層
- 4.4.5 異常Exception
- 第五節:注銷
- 第六節:驗證
- 4.6.1 action增加驗證
- 4.6.2 使用構造函數驗證
- 4.6.3 使用繼承驗證
- 第五章 E-R圖與數據字典
- 第一節:第一張E-R圖
- 第二節:實體間的關系
- 第三節:開發規范
- 第六章 班級管理
- 第一節:建立數據表
- 第二節:數據列表index
- 第三節:增加數據add
- 第四節:編輯數據edit
- 第五節:刪除數據delete
- 第七章 學生管理
- 第一節:建立數據表
- 第二節:數據列表
- 7.2.1 顯示性別
- 7.2.2 顯示創建時間
- 7.2.3 顯示班級名稱
- 7.2.4 顯示輔導員姓名
- 第三節:編輯數據
- 第四節:魔法函數
- 第五節:源碼分析
- 第八章 課程管理
- 第一節:建立數據表
- 第二節:新增課程
- 第三節:編輯課程
- 8.3.1 edit
- 8.3.2 update
- 第九章 代碼重構
- 第一節:add 與 edit
- 第二節:insert 與 update
- 第三節:模板繼承
- 9.3.1 index.html
- 9.3.2 edit.html
- 9.3.3 小結
- 第十章 UML圖
- 第一節:E-R圖回顧
- 第二節:UML圖
- 第十一章 菜單與路由
- 第一節:添加菜單
- 第二節:虛擬主機
- 第三節:定制路由
- 第十二章 開發調試
- 第一節:開啟trace
- 第二節:查看日志
- 第十三章:總結