您的位置 首页 php

tp5怎么去除index.php

tp5去除index.php的方法:1、使用“\think\Url::root('/');”;2、修改htaccess配置,代码如“ RewriteCond %{REQUEST_FILENAME}…”;3、修改nginx配置即可。

环境:win10 + php7.1 + nginx1.2 + ThinkPHP5 + Dell G3电脑

tp5怎么去除index.php?

TP5 去除url中 index.php 方法

在使用 ThinkPHP5 过程中,用 url 函数生成链接地址时,地址中产生了 index.php

  例:我们要生成一个 /home/news/list.html 的地址,结果生成的地址是 /index.php/home/news/list.html

在手册中 URL 生成篇有介绍:

  

还可以写成:

\think\Url::root('/');

其它配置:

  .htaccess配置 (nginx 可忽略此文件)

<IfModule mod_rewrite.c>  Options +FollowSymlinks -Multiviews  RewriteEngine On  RewriteCond %{REQUEST_FILENAME} !-d  RewriteCond %{REQUEST_FILENAME} !-f  RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]</IfModule>

  nginx配置

server{    listen 80;#监听端口    server_name www.demo.com;#域名    index index.html index.htm;    root D:/wnmp/demo/public;    location / {        index  index.html index.htm index.php;        #autoindex  on;                     if (!-e $request_filename) {            rewrite ^(.*)$ /index.php?s=/$1 last;        }    }     location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$    {        expires 30d;        # access_log off;    }    location ~ .*\.(js|css)?$    {        expires       max;        log_not_found off;        access_log    off;    }    error_page   500 502 503 504  /50x.html;    location ~ \.php$ {        fastcgi_pass   127.0.0.1:9000;        fastcgi_index  index.php;        #下面两句是给fastcgi权限,可以支持 ?s=/module/controller/action的url访问模式        fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;        #下面两句才能真正支持 index.php/index/index/index的pathinfo模式        fastcgi_param  PATH_INFO  $fastcgi_path_info;        fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;        include        fastcgi_params;    }}

推荐学习:《thinkphp教程》

文章来源:智云一二三科技

文章标题:tp5怎么去除index.php

文章地址:https://www.zhihuclub.com/24464.shtml

关于作者: 智云科技

热门文章

网站地图