国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ php教程 php手冊(cè) ThinkPHP3.2 のサブドメイン展開(kāi)とルーティング最適化に関する簡(jiǎn)単な説明 (1)

ThinkPHP3.2 のサブドメイン展開(kāi)とルーティング最適化に関する簡(jiǎn)単な説明 (1)

Dec 05, 2016 pm 01:26 PM

前書き: Web サイト システムの構(gòu)築には、PC 公式 Web サイト、モバイル 公式 Web サイト、バックエンド管理などの複數(shù)のサブ Web サイトが含まれることがよくあります。データは、ThinkPHP の観點(diǎn)から、アーキテクチャ全體を大まかに理解できます。 Model(M) と同様です。コントローラー (C) には共有 API 部分と非共有部分が含まれていますが、ビューは初期アーキテクチャ全體で主に次の點(diǎn)を考慮できます。

共有データベースの構(gòu)成、アプリケーションのモジュールの拡張、ビューフォルダーのカスタマイズ、サブドメインの展開(kāi)、ルーティングの簡(jiǎn)素化....

具體的な操作は以下の通りです:

1. ThinkPHP 環(huán)境とデータベースを準(zhǔn)備します

a. 公式 Web サイトから完全バージョンの ThinkPHP3.2 ソース コードをダウンロードし、解凍して testWeb という名前を付け、www ディレクトリに配置すると、次の內(nèi)容が表示されます。

展開(kāi)に問(wèn)題がないということです。

b. テスト データベース書籍を準(zhǔn)備し、新しい書籍テーブル (ID、タイトル、価格) を作成し、テスト データを準(zhǔn)備します。

c. データベースを設(shè)定します。ThinkPHP 設(shè)定読み込みルールを參照して、従來(lái)の設(shè)定 (ThinkPHP/Conf/convention.php) をアプリケーション設(shè)定 (Application/Common/Conf/config.php) と組み合わせて使用??できます。 (アプリケーション/現(xiàn)在のモジュール名/Conf/config.php), applicationアプリケーション構(gòu)成にデータベース構(gòu)成を使用します。

リーリー

次に、デフォルトの Index コントローラーにアクションを追加します。

リーリー
http://192.168.1.122/testWeb/index.php/

Home

/Index/get_book?id=1 にアクセスすると、これまでのところデータベース接続とアクセスが正常であることを示す json データに移動(dòng)できます。

2. アプリケーションディレクトリ內(nèi)のモジュールを展開(kāi)します

a. 現(xiàn)在のホーム モジュールをすばやくコピーし、名前を H5 モジュールに変更し、対応するコントローラーの名前空間を次のように変更します: namespace H5Controller,

にアクセスしてください: http://192.168.1.122/testWeb/index.php/

H5

/Index/get_book?id=1。この時(shí)點(diǎn)では、現(xiàn)在の H5 モジュールが正常であることを示しています。復(fù)元できます 管理モジュールを作成します。

3. カスタマイズされたビューフォルダー

a. 概念の表示: ThinkPHP は MVC 構(gòu)造に基づいて設(shè)計(jì)された PHP フレームワークであり、単純なデータベース操作であれば、モジュール內(nèi)のモデルを省略でき、コントローラーのみを使用して CURD 操作を完了できます。眺めも重要な特徴の一つです。 ThinkPHP のビューは、主にテンプレート ファイルとテンプレート エンジンを指します。テンプレート ファイルは、単純に、積み木おもちゃを組み立てる際の基本的な「小さなオリジナル」として理解できます。これらの「小さなオリジナル」は、さまざまな形狀を持つ場(chǎng)合があり、それぞれの「小さなオリジナル」です。形狀は積み木を組み立てる際に使用される場(chǎng)合があり、テンプレート エンジンは積み木玩具の「凹凸」バックルを構(gòu)築し、「小さなオリジナル」を組み合わせるルールを形成します。

b. 使用方法の表示: ホーム モジュール-インデックス コントローラー-ブック操作を追加してすべてのブックを取得し、ホーム モジュールのビュー フォルダーの下に新しいインデックス フォルダー-new book.html を作成します リーリー

テンプレートファイル: リーリー

????? c、 訪問(wèn):http://192.168.1.122/testWeb/index.php/Home/Index/book,此時(shí)可以看到頁(yè)面:

?????? 此時(shí),說(shuō)明這個(gè)視圖使用是正確的,但是同時(shí)也有一些不好的地方,如果模板文件多起來(lái)的時(shí)候,就不利于模板修改編輯(目錄層次太深了),可以在模塊配置中,定義當(dāng)前模塊默認(rèn)的視圖目錄(Application/Home/Conf/config.php):

<span class="hljs-string"><span class="hljs-string"> <span class="cnblogs_code"><span style="color: #008080">define</span>('TMPL_PATH','./Public/PC/'); </span><br></span></span>

類似定義H5、admin模塊的視圖目錄,最終得到的目錄組織,到此,就可以大概有幾個(gè)不同的子網(wǎng)站的初步架構(gòu)了。而對(duì)于網(wǎng)站的分類:二級(jí)菜單、三級(jí)菜單就可以分別對(duì)應(yīng)控制器(Controller)和操作(action),根據(jù)視圖模板構(gòu)造動(dòng)態(tài)的頁(yè)面:

4、子域名部署,關(guān)于子域名的解析可以參考我之前的文章網(wǎng)站部署一級(jí)域名、二級(jí)域名、子域名

a、主要修改一些相關(guān)配置:

<span style="color: #008080"> 1</span> <span style="color: #0000ff"><</span><span style="color: #800000">VirtualHost </span><span style="color: #ff0000">*:80</span><span style="color: #0000ff">></span>
<span style="color: #008080"> 2</span> <span style="color: #000000">    DocumentRoot "E:/wamp/www/testWeb/"
</span><span style="color: #008080"> 3</span> <span style="color: #000000">    ServerName  chqtest.com
</span><span style="color: #008080"> 4</span> <span style="color: #000000">    ServerAlias m.chqtest.com
</span><span style="color: #008080"> 5</span>     <span style="color: #0000ff"><</span><span style="color: #800000">Directory </span><span style="color: #ff0000">"E:/wamp/www/testWeb/"</span><span style="color: #0000ff">></span>
<span style="color: #008080"> 6</span> <span style="color: #000000">    Allow from all      
</span><span style="color: #008080"> 7</span>     <span style="color: #0000ff"></</span><span style="color: #800000">Directory</span><span style="color: #0000ff">></span>
<span style="color: #008080"> 8</span>     <span style="color: #0000ff"><</span><span style="color: #800000">IfModule </span><span style="color: #ff0000">dir_module</span><span style="color: #0000ff">></span>
<span style="color: #008080"> 9</span> <span style="color: #000000">       DirectoryIndex  mobile.php index.html index.htm default.php default.htm default.html
</span><span style="color: #008080">10</span>     <span style="color: #0000ff"></</span><span style="color: #800000">IfModule</span><span style="color: #0000ff">></span>
<span style="color: #008080">11</span> <span style="color: #0000ff"></</span><span style="color: #800000">VirtualHost</span><span style="color: #0000ff">></span>
<span style="color: #008080">12</span> 
<span style="color: #008080">13</span> <span style="color: #0000ff"><</span><span style="color: #800000">VirtualHost </span><span style="color: #ff0000">*:80</span><span style="color: #0000ff">></span>
<span style="color: #008080">14</span> <span style="color: #000000">    DocumentRoot "E:/wamp/www/testWeb/"
</span><span style="color: #008080">15</span> <span style="color: #000000">    ServerName  chqtest.com
</span><span style="color: #008080">16</span> <span style="color: #000000">    ServerAlias www.chqtest.com
</span><span style="color: #008080">17</span>     <span style="color: #0000ff"><</span><span style="color: #800000">Directory </span><span style="color: #ff0000">"E:/wamp/www/testWeb/"</span><span style="color: #0000ff">></span>
<span style="color: #008080">18</span> <span style="color: #000000">    Allow from all      
</span><span style="color: #008080">19</span>     <span style="color: #0000ff"></</span><span style="color: #800000">Directory</span><span style="color: #0000ff">></span>
<span style="color: #008080">20</span>     <span style="color: #0000ff"><</span><span style="color: #800000">IfModule </span><span style="color: #ff0000">dir_module</span><span style="color: #0000ff">></span>
<span style="color: #008080">21</span> <span style="color: #000000">       DirectoryIndex  index.php index.html index.htm default.php default.htm default.html
</span><span style="color: #008080">22</span>     <span style="color: #0000ff"></</span><span style="color: #800000">IfModule</span><span style="color: #0000ff">></span>
<span style="color: #008080">23</span> <span style="color: #0000ff"></</span><span style="color: #800000">VirtualHost</span><span style="color: #0000ff">></span>
<span style="color: #008080">24</span> 
<span style="color: #008080">25</span> <span style="color: #0000ff"><</span><span style="color: #800000">VirtualHost </span><span style="color: #ff0000">*:80</span><span style="color: #0000ff">></span>
<span style="color: #008080">26</span> <span style="color: #000000">    DocumentRoot "E:/wamp/www/testWeb/"
</span><span style="color: #008080">27</span> <span style="color: #000000">    ServerName  chqtest.com
</span><span style="color: #008080">28</span> <span style="color: #000000">    ServerAlias admin.chqtest.com
</span><span style="color: #008080">29</span>     <span style="color: #0000ff"><</span><span style="color: #800000">Directory </span><span style="color: #ff0000">"E:/wamp/www/testWeb/"</span><span style="color: #0000ff">></span>
<span style="color: #008080">30</span> <span style="color: #000000">    Allow from all      
</span><span style="color: #008080">31</span>     <span style="color: #0000ff"></</span><span style="color: #800000">Directory</span><span style="color: #0000ff">></span>
<span style="color: #008080">32</span>     <span style="color: #0000ff"><</span><span style="color: #800000">IfModule </span><span style="color: #ff0000">dir_module</span><span style="color: #0000ff">></span>
<span style="color: #008080">33</span> <span style="color: #000000">       DirectoryIndex  index.php index.html index.htm default.php default.htm default.html
</span><span style="color: #008080">34</span>     <span style="color: #0000ff"></</span><span style="color: #800000">IfModule</span><span style="color: #0000ff">></span>
<span style="color: #008080">35</span> <span style="color: #0000ff"></</span><span style="color: #800000">VirtualHost</span><span style="color: #0000ff">></span>

此時(shí),也就是說(shuō),有不同子域名(二級(jí)網(wǎng)站別名)www.chqtest.com m.chqtest.com admin.chqtest.com都可以直接訪問(wèn)到www/testWeb目錄下,如http://www.chqtest.com/index.php/Home/Index/book,

http://m.chqtest.com/index.php/Home/Index/book都是一樣的,只是訪問(wèn)到Home模塊下的書籍頁(yè)面(改Home為H5也都指向手機(jī)端頁(yè)面);

b、那么如果要根據(jù)不同的子域名,直接綁定到不同的模塊怎么辦?參考ThinkPHP的域名部署,也就是在慣用配置下補(bǔ)充一些信息:

<span style="color: #008080"> 1</span>     'APP_SUB_DOMAIN_DEPLOY' =>  <span style="color: #0000ff">true</span>,   <span style="color: #008000">//</span><span style="color: #008000"> 是否開(kāi)啟子域名部署
</span><span style="color: #008080"> 2</span> <span style="color: #008000">    //完整域名部署</span>
<span style="color: #008080"> 3</span>     'APP_SUB_DOMAIN_RULES'    =>    <span style="color: #0000ff">array</span>( <span style="color: #008000">//</span><span style="color: #008000"> 子域名部署規(guī)則</span>
<span style="color: #008080"> 4</span>         'www.chqtest.com'  => 'Home',   <span style="color: #008000">//</span><span style="color: #008000"> www.chqtest.com域名指向Home模塊</span>
<span style="color: #008080"> 5</span>         'm.chqtest.com'   => 'H5',
<span style="color: #008080"> 6</span>         'admin.chqtest.com' => 'Admin',
<span style="color: #008080"> 7</span>     ),
<span style="color: #008080"> 8</span>     'APP_DOMAIN_SUFFIX'     =>  '', <span style="color: #008000">//</span><span style="color: #008000"> 域名后綴 如果是com.cn net.cn 之類的后綴必須設(shè)置    </span>
<span style="color: #008080"> 9</span>     'ACTION_SUFFIX'         =>  '', <span style="color: #008000">//</span><span style="color: #008000"> 操作方法后綴</span>
<span style="color: #008080">10</span>     'MULTI_MODULE'          =>  <span style="color: #0000ff">true</span>, <span style="color: #008000">//</span><span style="color: #008000"> 是否允許多模塊 如果為false 則必須設(shè)置 DEFAULT_MODULE</span>
<span style="color: #008080">11</span>     'MODULE_DENY_LIST'      =>  <span style="color: #0000ff">array</span>('Common','Runtime'),
<span style="color: #008080">12</span>     'MODULE_ALLOW_LIST'    =>    <span style="color: #0000ff">array</span>('Home','H5','Admin'), <span style="color: #008000">//</span><span style="color: #008000"> 允許訪問(wèn)的模塊列表</span>

???????????? 再次訪問(wèn)http://www.chqtest.com/index.php/Home/Index/book,http://m.chqtest.com/index.php/Home/Index/book,會(huì)發(fā)現(xiàn)有以下錯(cuò)誤:

??? 這是因?yàn)榻壎ㄗ佑蛎渴鹬?,index.php入口文件定位到Application應(yīng)用目錄之前,就已經(jīng)根據(jù)不同的子域名,直接進(jìn)入相應(yīng)的目錄里面了,這時(shí)Home就會(huì)被判斷要查找的控制器,顯然當(dāng)前控制器只有Index,所以,重新訪問(wèn):http://www.chqtest.com/index.php/Index/book,http://m.chqtest.com/index.php/Index/book,http://admin.chqtest.com/index.php/Index/book,是不是就都分別訪問(wèn)到相應(yīng)模塊下的操作并返回視圖呢:

??????????

???? 這時(shí),基本就可以搭建了一個(gè)大體的網(wǎng)站架構(gòu)就進(jìn)一步完善了些,從http://192.168.1.122/testWeb/index.php/H5/Index/book訪問(wèn)手機(jī)端書籍頁(yè)面,到http://m.chqtest.com/index.php/Index/book是不是可以省略了一級(jí)資源目錄和模塊名了呢,

???? 整個(gè)結(jié)構(gòu)也清晰了很多。下一篇,將繼續(xù)說(shuō)說(shuō)ThinkPHP關(guān)于路由優(yōu)化,PC、H5網(wǎng)站相互切換的技巧,有興趣的可以留意下,關(guān)于這次例子可以參考Demo

?

????

?

?

?

?

?

????????

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見(jiàn)つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無(wú)料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版

SublimeText3 中國(guó)語(yǔ)版

中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開(kāi)発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)