第一次使用TP5.0新建項目
僅供參考。
安裝問題中所屬:新建一個項目,下屬:shop,cms,weixin,mobile四個模塊(這里暫時稱之為模塊吧)
一、將你的網(wǎng)站住目錄設(shè)置為 ./public
也就是說,你的網(wǎng)站主目錄是public目錄,github中的其他兩個目錄隨意你放到任何位置,但是前提是,根據(jù)文件引用規(guī)則,確實能夠相互引用。
public中默認(rèn)有:├─public????????????????WEB目錄(對外訪問目錄)<br>│??├─index.php??????????入口文件<br>│??├─.htaccess??????????用于apache的重寫<br>│??└─router.php?????????快速測試文件(用于PHP內(nèi)置webserver)
這也就意味著,在tp5.0的版本中,你的網(wǎng)站主目錄里將不會出現(xiàn)框架目錄和項目目錄(這樣說可能略顯復(fù)雜了,也就是說:把所有不用直接訪問的文件都移到網(wǎng)站目錄外面了,這樣為了安全。)。
虛擬主機或者不支持自定義主目錄的云主機中,請將本目錄里所有文件復(fù)制到外面的主目錄中,并修改相應(yīng)的引用。
也就是tp3.0的方式,否則:你只能使用:http://think.com/public/index.php來訪問了。
二、項目文件的自動生成
從github上clone的時候,默認(rèn)項目目錄中是有文件的,安裝問題中所述,是不想要index這個模塊的,所以可以把application目錄里的文件全部刪除(你最好不要刪除這個目錄)。
然后,復(fù)制github庫中的‘build.php’到‘a(chǎn)pplication’
并修改為:
<?php return [ // 生成運行時目錄 '__dir__' => ['runtime/cache', 'runtime/log', 'runtime/temp'], '__file__' => ['tags.php'], //其實,如果上面的改成:'__file__' => ['tags.php','config.php'], 那么config.php 也會自動創(chuàng)建 // 定義shop模塊的自動生成 'shop' => [ '__file__' => ['tags.php'], '__dir__' => ['behavior', 'controller', 'model', 'view'], 'controller' => ['Index', 'Test', 'UserType'], 'model' => [], 'view' => ['index/index'], ], // 定義cms模塊的自動生成 'cms' => [ '__file__' => ['tags.php'], '__dir__' => ['behavior', 'controller', 'model', 'view'], 'controller' => ['Index', 'Test', 'UserType'], 'model' => [], 'view' => ['index/index'], ], // 定義mobile模塊的自動生成 'mobile' => [ '__file__' => ['tags.php'], '__dir__' => ['behavior', 'controller', 'model', 'view'], 'controller' => ['Index', 'Test', 'UserType'], 'model' => [], 'view' => ['index/index'], ], // 定義weixin模塊的自動生成 'weixin' => [ '__file__' => ['tags.php'], '__dir__' => ['behavior', 'controller', 'model', 'view'], 'controller' => ['Index', 'Test', 'UserType'], 'model' => [], 'view' => ['index/index'], ], // 。。。 其他更多的模塊定義 ];
當(dāng)然,你還要在'index.php'中添加一行代碼:
//你最好在完成自動生成后,把他刪除了。<br/>define('APP_AUTO_BUILD',true);
接著,訪問你的域名(或者本地地址),按照上面問題中所屬的模塊,你會得到一個錯誤頁面
原因很簡單,因為默認(rèn)模塊是index,而這個問題所要求的項目中沒有index模塊。
那么我們要修改配置文件,不過打開項目目錄(application),然后進入模塊目錄,你會發(fā)現(xiàn),哦,你找不到配置文件,是的,根據(jù)默認(rèn)的生成情況來看,配置文件是沒有進行生成的(最起碼上面的自動生成代碼中是沒有的)。
那么我們可以自己新建一個,根據(jù)tp5.0模板中的介紹,我們可以在項目目錄(application)中直接新建一個’config.php‘文件,并寫入:
<? return [ // 默認(rèn)模塊名 'default_module' => 'shop', // 禁止訪問模塊 'deny_module_list' => [COMMON_MODULE, 'runtime'], // 默認(rèn)控制器名 'default_controller' => 'Index', // 默認(rèn)操作名 'default_action' => 'index', // 默認(rèn)的空控制器名 'empty_controller' => 'Error', // 操作方法后綴 'action_suffix' => '', // 操作綁定到類 'action_bind_class' => false, ];
哦,好吧,從這里你會看出,這里是直接復(fù)制的’think/thinkphp/convention.php‘中的代碼,是的,我想告訴你的就是,如果你遇到問題,直接看tp的源代碼,將會獲得意想不到的幫助。
哦,是的,ThinkPHP 5 簡明開發(fā)手冊 也是個好地方

熱AI工具

Undress AI Tool
免費脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機

Video Face Swap
使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

《Go語言編程實例:Web開發(fā)中的代碼示例》隨著互聯(lián)網(wǎng)的快速發(fā)展,Web開發(fā)已經(jīng)成為各行業(yè)中必不可少的一部分。作為一門功能強大且性能優(yōu)越的編程語言,Go語言在Web開發(fā)中越來越受到開發(fā)者們的青睞。本文將通過具體的代碼示例,介紹如何利用Go語言進行Web開發(fā),讓讀者能夠更好地理解和運用Go語言來構(gòu)建自己的Web應(yīng)用。1.簡單的HTTP服務(wù)器首先,讓我們從一個

華為云邊緣計算對接指南:Java代碼示例快速實現(xiàn)接口隨著物聯(lián)網(wǎng)技術(shù)的快速發(fā)展和邊緣計算的興起,越來越多的企業(yè)開始關(guān)注邊緣計算的應(yīng)用。華為云提供了邊緣計算服務(wù),為企業(yè)提供了高可靠的計算資源和便捷的開發(fā)環(huán)境,使得邊緣計算應(yīng)用更加容易實現(xiàn)。本文將介紹如何通過Java代碼快速實現(xiàn)華為云邊緣計算的接口。首先,我們需要準(zhǔn)備好開發(fā)環(huán)境。確保你已經(jīng)安裝了Java開發(fā)工具包(

了解Python編程的入門級代碼示例Python是一種簡單易學(xué),功能強大的編程語言。對于初學(xué)者來說,了解Python編程的入門級代碼示例是非常重要的。本文將為您提供一些具體的代碼示例,幫助您快速入門。打印HelloWorldprint("HelloWorld")這是Python中最簡單的代碼示例。print()函數(shù)用于將指定的內(nèi)容輸出

Java冒泡排序最簡單的代碼示例冒泡排序是一種常見的排序算法,它的基本思想是通過相鄰元素的比較和交換來將待排序序列逐步調(diào)整為有序序列。下面是一個簡單的Java代碼示例,演示了如何實現(xiàn)冒泡排序:publicclassBubbleSort{publicstaticvoidbubbleSort(int[]arr){int

PHP變量存儲程序運行期間的值,對于構(gòu)建動態(tài)且交互式的WEB應(yīng)用程序至關(guān)重要。本文將深入探討php變量,并通過10個真實的示例展示它們的實際應(yīng)用。1.存儲用戶輸入$username=$_POST["username"];$passWord=$_POST["password"];此示例從表單提交中提取用戶名和密碼,并將其存儲在變量中以供進一步處理。2.設(shè)置配置值$database_host="localhost";$database_username="username";$database_pa

如何使用PHP編寫庫存管理系統(tǒng)中的庫存分倉管理功能代碼庫存管理是許多企業(yè)中不可或缺的一部分。對于擁有多個倉庫的企業(yè)來說,庫存分倉管理功能尤為重要。通過合理管理和跟蹤庫存,企業(yè)可以實現(xiàn)不同倉庫之間的庫存調(diào)撥,優(yōu)化運營成本,改善協(xié)同效率。本文將介紹如何使用PHP編寫庫存分倉管理功能的代碼,并為您提供相關(guān)的代碼示例。一、建立數(shù)據(jù)庫在開始編寫庫存分倉管理功能的代碼之

標(biāo)題:從入門到精通:Go語言中常用數(shù)據(jù)結(jié)構(gòu)的代碼實現(xiàn)數(shù)據(jù)結(jié)構(gòu)在編程中起著至關(guān)重要的作用,它是程序設(shè)計的基礎(chǔ)。在Go語言中,有許多常用的數(shù)據(jù)結(jié)構(gòu),掌握這些數(shù)據(jù)結(jié)構(gòu)的實現(xiàn)方式對于成為一名優(yōu)秀的程序員至關(guān)重要。本文將介紹Go語言中常用的數(shù)據(jù)結(jié)構(gòu),并給出相應(yīng)的代碼示例,幫助讀者從入門到精通這些數(shù)據(jù)結(jié)構(gòu)。1.數(shù)組(Array)數(shù)組是一種基本的數(shù)據(jù)結(jié)構(gòu),是一組相同類型

Java選擇排序法代碼編寫指南及示例選擇排序是一種簡單直觀的排序算法,其思想是每次從未排序的元素中選擇最小(或最大)的元素進行交換,直到所有元素排序完成。本文將提供選擇排序的代碼編寫指南,并附上具體的Java示例代碼。算法原理選擇排序的基本原理是將待排序數(shù)組分為已排序和未排序兩部分,每次從未排序部分選擇最?。ɑ蜃畲螅┑脑?,將其放到已排序部分的末尾。重復(fù)上述
