• 技术文章 >php框架 >ThinkPHP

    tp5怎么去除index.php

    藏色散人藏色散人2021-11-18 10:20:20原创149

    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的详细内容,更多请关注php中文网其它相关文章!

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:tp5 index.php
    上一篇:聊聊TP框架中的钩子有何用? 下一篇:教你如何把SQL语句转成TP5
    php中文网线上培训班

    相关文章推荐

    • ThinkPHP5访问怎么去除/public/index.php• wamp怎么去掉index.php• tp5不能访问index.php怎么办• 阿里云怎么隐藏index.php• xampp怎么隐藏index.php

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网