• Welcome to Journal web site.

我是 PHP 程序员

- 开发无止境 -

Next
Prev

多入口网站前端去除index的伪静态方法,一个土壤检测仪站分享 - ThinkPHP框架

Data: 2019-09-15 17:02:21Form: JournalClick: 11

多入口网站前端去除index的伪静态方法,一个土壤检测仪站分享 - ThinkPHP框架

 

自己用tp6做的cms(不得不说tp6真是好用好学),有后台管理admin和网站展示index两个应用,以前做站的时候一直用的手册中默认的路由方法,前端网址必须带上index,/index/article/9.html,一直以来也没觉得怎么着,但是这两天帮朋友改一个dede的站(dede老被人攻击),必须跟原站的url一样,没办法了,折腾了好半天,好几种方法,甚至用子域名绑后台的方式,但是都不方便。

后来想到了用多入口的方式,网站展示用index.php入口,网站后台用admin.php入口。代码如下。

    1. namespace think;
    2. require __DIR__ . '/../vendor/autoload.php';
    3. // 执行HTTP应用并响应
    4. $http = (new App())->http;
    5. $response = $http->name('admin')->run();
    6. $response->send();
    7. $http->end($response);

然后在伪静态那里设置以下,我用的是nginx。

 

location / {
if (!-e $request_filename){
rewrite ^/admin(.*)$ /admin.php?s=$1 last;
rewrite ^/index(.*)$ /index.php?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last; break;
}
}

这样以来,就解决了网站url中必须包含index的问题,可以用路由任意配置了。

 

 

 

 

 

 

Name:
<提交>