>PHP 프레임워크 >ThinkPHP >ThinkPHP5.1 도메인 이름 바인딩 모듈

ThinkPHP5.1 도메인 이름 바인딩 모듈

Guanhui
Guanhui앞으로
2020-04-30 10:18:095321검색

귀하의 웹사이트가 하나의 백엔드에 두 웹사이트의 정보를 추가해야 하는 경우 프런트엔드에는 기본 도메인 이름, 기본 도메인 이름의 모바일 버전, 보조 도메인 이름, 보조 도메인 이름의 모바일 버전 등 4개의 모듈이 있습니다. 도메인 이름 기본 도메인 이름과 보조 도메인 이름을 결합해야 합니다. 도메인 이름 모듈이 서로 다른 도메인 이름에 바인딩되어 있고 기본 도메인 이름과 보조 도메인 이름의 라우팅이 완전히 동일한 경우 다음을 참조할 수 있습니다. 아래의 내 라우팅 구성 방법은

<?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;,
]);

마지막으로 로컬에서 사용하는 경우 phpstudy를 Apache 환경에서 개발할 때 하나의 도메인 이름 관리에서 4개의 도메인 이름을 구성해야 하며 나머지 3개의 도메인 이름은 공백으로 함께 작성하면 됩니다. 두 번째 도메인 이름을 지정하고 마지막으로 이 4개의 도메인 이름을 호스트 파일의 로컬에 바인딩합니다.

권장 튜토리얼: "TP5"

위 내용은 ThinkPHP5.1 도메인 이름 바인딩 모듈의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제