TP5多入口设置

Posted 咸鱼想翻身

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TP5多入口设置相关的知识,希望对你有一定的参考价值。

今天在用tp5做项目的时候发现,前台是可以绑定默认到index模块的,但是后台不好弄,于是查了一下手册,按照手册上说的,复制了index.php改为admin.php,作为后台的入口文件,于是域名/admin.php就可以访问后台了(默认是admin模块的index控制器的index方法),虽然可以访问了,但是我是个完美主义者,或者说室友强迫症的人,我觉得admin.php的.php看上去很是刺眼,要是能去掉就更好了,于是我就想到了把nginx的配置改一下,抱着试一试的态度,结果还是挺满意的,去掉了尾巴看上去爽多了,下面贴上代码

入口文件admin.php

 1 <?php
 2 // +----------------------------------------------------------------------
 3 // | ThinkPHP [ WE CAN DO IT JUST THINK ]
 4 // +----------------------------------------------------------------------
 5 // | Copyright (c) 2006-2016 http://thinkphp.cn All rights reserved.
 6 // +----------------------------------------------------------------------
 7 // | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
 8 // +----------------------------------------------------------------------
 9 // | Author: liu21st <[email protected]>
10 // +----------------------------------------------------------------------
11 
12 // [ 应用入口文件 ]
13 
14 // 定义应用目录
15 define(‘APP_PATH‘, __DIR__ . ‘/../application/‘);
16 // 绑定到admin模块
17 define(‘BIND_MODULE‘,‘admin‘);
18 // 加载框架引导文件
19 require __DIR__ . ‘/../thinkphp/start.php‘;
20 
21 ?>

后台首页Index.php

 1 <?php
 2 /*
 3 *功能:后台首页控制器
 4 *作者:魏安来
 5 *日期:2017/12/12
 6 */
 7 
 8 namespace app\admin\controller;
 9 
10 class Index extends Base{
11 
12     /*后台首页*/
13     public function index(){
14         return ‘admin‘;
15         //return $this->fetch();
16     }
17 
18 }
19 
20 ?>

nginx配置vhosts.conf

 1 server {
 2         listen       80;
 3         server_name  www.tpmall.com tpmall.com;
 4         root   "F:/phpStudy/WWW/tpmall/public";
 5         location / {
 6             index  index.html index.htm index.php admin.php;
 7             #autoindex  on;
 8             
 9           if (!-e $request_filename){
10               rewrite  ^(.*)$  /index.php?s=/$1  last;
11           }
12           if (!-e $request_filename){
13               rewrite  ^(.*)$  /admin.php?s=/$1  last;
14           }
15 
16         }
17         location ~ \.php(.*)$ {
18             fastcgi_pass   127.0.0.1:9000;
19             fastcgi_index  index.php;
20             fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
21             fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
22             fastcgi_param  PATH_INFO  $fastcgi_path_info;
23             fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
24             include        fastcgi_params;
25         }
26 }

 

以上是关于TP5多入口设置的主要内容,如果未能解决你的问题,请参考以下文章

tp5 多入口 控制器不存在:Index

nginx下TP5 隐藏入口文件+支持pathinfo模式+配置多项目根目录

新手,求教tp5入口怎么搞

tp5修改入口文件

tp5生命周期

tp5怎么把入口文件放在根目录