Heim  >  Artikel  >  PHP-Framework  >  ThinkPHP5.1-Domänennamenbindungsmodul

ThinkPHP5.1-Domänennamenbindungsmodul

Guanhui
Guanhuinach vorne
2020-04-30 10:18:095283Durchsuche

Wenn Ihre Website die Informationen von zwei Websites in einem Backend hinzufügen muss, verfügt Ihr Frontend über vier Module: den Hauptdomänennamen, die mobile Version des Hauptdomänennamens, den sekundären Domänennamen und die mobile Version von Sie müssen den Hauptdomänennamen und den Unterdomänennamen hinzufügen. Die Module sind jeweils an unterschiedliche Domänennamen gebunden, und das Routing des primären Domänennamens und des sekundären Domänennamens ist genau gleich Routing-Konfigurationsmethode unten,

<?php
//主域名的 路由定义
Route::rule(&#39;/&#39;, &#39;index/index&#39;);
Route::rule(&#39;category/:id/[:p]&#39;, &#39;content/lists&#39;);//导航分类
Route::rule(&#39;preview/:id/[:p]&#39;, &#39;content/preview&#39;);//后台预览
Route::rule(&#39;categorys/:ids/[:p]&#39;, &#39;content/lists&#39;);//新闻标签
Route::rule(&#39;view/:id&#39;, &#39;content/view&#39;);//资讯详情
Route::rule(&#39;views/:id&#39;, &#39;content/views&#39;);//网站地图
Route::rule(&#39;message&#39;, &#39;content/message&#39;);//在线留言
Route::rule(&#39;sitemap.xml&#39;, &#39;index/sitemap&#39;);//这是蜘蛛地图路由
//主域名的手机站
Route::domain(&#39;m.&#39;.config ( &#39;setting.web_site_net&#39; ), function () {
    // 动态注册域名的路由规则
    Route::rule(&#39;/&#39;, &#39;wap/index/index&#39;);
    Route::rule(&#39;entry/:id/[:p]&#39;, &#39;wap/content/lists&#39;); //导航分类
    Route::rule(&#39;entrys/:ids/[:p]&#39;, &#39;wap/content/lists&#39;);//新闻标签
    Route::rule(&#39;detail/:id&#39;, &#39;wap/content/view&#39;);//资讯详情
    Route::rule(&#39;messages&#39;, &#39;wap/content/message&#39;);//在线留言
})->bind(&#39;wap&#39;);
// 第二域名主域名 完整域名绑定到index_en模块
if(config ( &#39;setting.is_www&#39; )){
    $web_site_net_en= &#39;www.&#39; . config ( &#39;setting.web_site_net_en&#39; );
}else{
    $web_site_net_en=  config ( &#39;setting.web_site_net_en&#39; );
}
Route::domain($web_site_net_en, function () {
    // 动态注册域名的路由规则
    Route::rule(&#39;/&#39;, &#39;index_en/index/index&#39;);
    Route::rule(&#39;category/:id/[:p]&#39;, &#39;index_en/content/lists&#39;);
    Route::rule(&#39;preview/:id/[:p]&#39;, &#39;index_en/content/preview&#39;);
    Route::rule(&#39;categorys/:ids/[:p]&#39;, &#39;index_en/content/lists&#39;);
    Route::rule(&#39;view/:id&#39;, &#39;index_en/content/view&#39;);
    Route::rule(&#39;views/:id&#39;, &#39;index_en/content/views&#39;);
    Route::rule(&#39;message&#39;, &#39;index_en/content/message&#39;);
    Route::rule(&#39;sitemap.xml&#39;, &#39;index_en/index/sitemap&#39;);
})->bind(&#39;index_en&#39;);
//第二域名手机域名
Route::domain(&#39;m.&#39;.config ( &#39;setting.web_site_net_en&#39; ), function () {
    // 动态注册域名的路由规则
    Route::rule(&#39;/&#39;, &#39;wap_en/index/index&#39;);
    Route::rule(&#39;entry/:id/[:p]&#39;, &#39;wap_en/content/lists&#39;); //导航分类
    Route::rule(&#39;entrys/:ids/[:p]&#39;, &#39;wap_en/content/lists&#39;);//新闻标签
    Route::rule(&#39;detail/:id&#39;, &#39;wap_en/content/view&#39;);//资讯详情
    Route::rule(&#39;messages&#39;, &#39;wap_en/content/message&#39;);//在线留言
})->bind(&#39;wap_en&#39;);
// 全局变量 支持批量添加
Route::pattern([
    &#39;name&#39; => &#39;\w+&#39;,
    &#39;id&#39;   => &#39;\d+&#39;,
]);

Wenn es lokal mit phpstudy entwickelt wurde und sich in einer Apache-Umgebung befindet, müssen Sie vier Domänennamen in einer Domänennamenverwaltung konfigurieren. Sie können die anderen drei Domänennamen schreiben zusammen mit Leerzeichen im zweiten Domänennamen und binden Sie sie schließlich in die Hostdatei. Diese vier Domänennamen können lokalisiert werden

Empfohlenes Tutorial: „TP5

Das obige ist der detaillierte Inhalt vonThinkPHP5.1-Domänennamenbindungsmodul. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen