? ????? ??? ?? ?? ???? ???? ?? ??? ???, ?? ???? ???? ???? ???? ???. ?? ?? ??? ??? ???? ???. ThinkPHP6? ?? ??? ??? ???? ??? ????????. ? ????? ?? ??? ??? ?? ThinkPHP6? ???? ??? ?????.
1. ?? ??? ??
?? ??? ??? ????? ??? ?? ???? ???? ???. ????? ?? ??? ??? Apache ?? ???? ???? httpd.conf
??? ???? ??? ? ????. ?? ?? ? ?? ?? ???? ??? ??? ? ????. ? ???? www.site1.com
?? ?? ???? www.site2.com
??? ???? ??? ?? ??? ? ????. httpd.conf
文件實(shí)現(xiàn)。例如,我們?cè)诒镜乜梢耘渲脙蓚€(gè)虛擬主機(jī)。假設(shè)一個(gè)站點(diǎn)是www.site1.com
,另一個(gè)是www.site2.com
,那么我們可以這樣配置。
<VirtualHost *:80> ServerName www.site1.com DocumentRoot "E:/www/site1/" <Directory "E:/www/site1/"> AllowOverride All Require all granted </Directory> </VirtualHost> <VirtualHost *:80> ServerName www.site2.com DocumentRoot "E:/www/site2/" <Directory "E:/www/site2/"> AllowOverride All Require all granted </Directory> </VirtualHost>
需要注意,定義的文檔根目錄必須存在且可讀可寫(xiě)。
二、創(chuàng)建ThinkPHP6項(xiàng)目
創(chuàng)建多站點(diǎn)管理的項(xiàng)目和創(chuàng)建普通項(xiàng)目沒(méi)有什么區(qū)別。使用Composer命令創(chuàng)建項(xiàng)目:composer create-project topthink/think myproject
。創(chuàng)建完成后,目錄結(jié)構(gòu)如下:
myproject ├─app │ ├─admin │ └─index ├─config ├─public ├─route ├─runtime └─think
這個(gè)項(xiàng)目下有兩個(gè)目錄,index
和admin
。我們可以把index
目錄看作是一個(gè)站點(diǎn)的根目錄,admin
目錄看作是另一個(gè)站點(diǎn)的根目錄。為了方便管理,我們可以將它們?cè)O(shè)置為單獨(dú)的應(yīng)用程序。
三、多應(yīng)用配置
為了實(shí)現(xiàn)多應(yīng)用程序的管理,我們需要在配置文件中進(jìn)行修改。
- 修改
app.php
app.php
文件在config
目錄下。首先,我們需要在配置文件中設(shè)置auto_multi_app
為true
。
return [ 'auto_multi_app' => true, 'app_map' => [ 'site1' => 'index', 'site2' => 'admin', ], ... ];
然后,我們使用app_map
項(xiàng)來(lái)為每個(gè)站點(diǎn)定義應(yīng)用程序。比如,我們將site1
設(shè)為index
應(yīng)用程序,site2
設(shè)為admin
應(yīng)用程序。
- 修改
route.php
打開(kāi)route.php
文件,為每個(gè)站點(diǎn)配置路由規(guī)則。比如,對(duì)于site1
站點(diǎn),我們可以這樣配置:
Route::domain('www.site1.com', function () { Route::get('/', 'index/hello'); });
這將為www.site1.com
綁定index
應(yīng)用程序中的Index
控制器上的hello
方法。
同樣的,對(duì)于site2
站點(diǎn),我們的配置可能是這樣的:
Route::domain('www.site2.com', function () { Route::get('/', 'admin/hello'); });
這將為www.site2.com
綁定admin
應(yīng)用程序中的Index
控制器上的hello
方法。
四、測(cè)試
現(xiàn)在,我們已經(jīng)完成了多站點(diǎn)管理的配置?,F(xiàn)在我們來(lái)測(cè)試一下。打開(kāi)瀏覽器,在地址欄中輸入www.site1.com
,你應(yīng)該可以看到index
應(yīng)用程序的Index
控制器中的hello
方法的輸出。同樣的,輸入www.site2.com
,你應(yīng)該可以看到admin
應(yīng)用程序中的Index
控制器中的hello
rrreee
composer create-project topthink/think myproject
. ?? ? ???? ??? ??? ????: rrreee
? ???? ????index
? admin
??? ? ?? ????? ????. index
????? ???? ?? ?????, admin
????? ?? ???? ?? ????? ??? ? ????. ? ?? ??? ?? ??? ???????? ??? ? ????. ????3. ?? ?????? ???????? ??????? ????? ?? ??? ???? ???. ??-
config
??????app.php
app.php
??? ?????. . ?? ?? ???? auto_multi_app
? true
? ???? ???. ??rrreee?? ?? ?? app_map
??? ???? ? ???? ?? ??????? ?????. ?? ?? site1
? index
???????? ???? site2
? admin
???????? ?????. ??-
route.php
??
route.php
??? ?? ??? ?? ?????. ??? ??? ??. ?? ?? site1
???? ?? ??? ?? ??? ? ????. ??rrreee????? ?? www.site1.com? ?? ??????? <code>index
? ??????. code> Index
????? hello
???. ????????? site2
???? ?? ??? ??? ????. ??rrreee????? ?? www.site2.com
? ?? admin
? ??????. code>??????? Index
????? ?? hello
???. ????4. Test?????? ?? ??? ?? ??? ???????. ?? ???? ?????. ????? ?? ?? ???? www.site1.com
? ???? index
??????? Index
????? ?????. ?????
???. ????? www.site2.com
? ???? admin
??????? Index
????? hello? ?????.
???? ??. ??????? ?? ?? ?? ??? ??, ??? ?? ?? ?????. ????5. ???????? ??? ??? ThinkPHP6? ???? ?? ??? ????. ??? ???? ??, ?????? ?? ? ??? ??? ????? ???? ?? ?? ???? ???? ????. ? ??? ?? ThinkPHP6? ???? ?? ??? ??? ???? ??? ???? ?????. ??? ??? ?? ??? ??? ?? ThinkPHP6? ???? ??? ??????? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

ThinkPHP ????? ????? ??? ?????: Composer? ????, ???? ????? ???? php bin/console? ????, ?? ???? ??? http://localhost:8000? ?????.

ThinkPHP?? ??? PHP ????? ??? ?? ??? ????. ??? ???? 3.2, 5.0, 5.1, 6.0? ????, ??? ??? ??? ???? ??? ??? ???? ? ?????. ?? ?? ??? ThinkPHP 6.0.16???. ??? ??? ? PHP ??, ?? ?? ?? ? ???? ??? ??????. ??? ??? ??? ???? ?? ?? ??? ???? ?? ????.

ThinkPHP Framework? ???? ???? ??: ThinkPHP Framework? ?? ????? ?????? ??? ???. ThinkPHP ?? ????? ???? ?? ???(?? ??)? ????. ?????? ?? ????? ?????. ? ??? ?????. ThinkPHP ??????? ??????. ThinkPHP ?????? URL? ???? ?????.

Laravel? ThinkPHP ?????? ?? ??: ThinkPHP? ????? ??? ? ??? ??? ?? Laravel?? ??? ????. Laravel? ? ????? ??? ??????? ?? ThinkPHP? ? ??? ? ????.

ThinkPHP ?? ??: PHP, Composer ? MySQL ??? ?????. Composer? ???? ????? ????. ThinkPHP ?????? ???? ?????. ?????? ??? ?????. ?????? ??? ?????. ??????? ???? http://localhost:8000? ?????.

ThinkPHP? ?? ????, ?? ???, ?? ?? ? ?????? ???? ?? ??? ?? ??? PHP ????????. ?? ?? ???? ??? ?? 10,000? ??? ??? ??? ? ??? JD.com, Ctrip? ?? ??? ? ??? ? ?????? ????? ?? ?? ?????? ?? ?????.

ThinkPHP ????? ????? ??? ???? ???. 1. ?? ????? ????. 2. ??????? ?????. 4. ?????? ??? ???? ??? ?????. 7. ????? ?????. ?? ???? ??? ?? ??, ???? ?? ??? ? ???? ??? ?????.

Oracle ???????? ??? ????? ??? ?? ??? ?????. Oracle ???????? ??? ????(MasterDirectory)? ?? ??? ?? ??? ??? ?? ??? ?? ?? ??? ?????? ????. ??? ??????. ? ????? ???? ?????? ??? ?? ? ???? ?? ???? ??????? ??? ??? ???? ? ????. ? ????? ??? ?? ???? ??? ? ????. 1. ? ???? ?? ? ????? ????? ??? ?????.
