Thinkphp6路由重写,隐藏index.php

发布时间:2019-11-23 12:39:06 阅读:15

    不知道是因为我本地环境的原因还是什么,thinkphp6在访问的时候,路由URL必须要有index.php,否则会报错。

    可能是我有点强迫症,觉得这个有点多余,想将其去掉。

    需要修改public目录下的 .htaccess文件

    参考官方文档中的介绍:大概是这样

    <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>

    配置完成之后,再访问,不好用!

    一开始我以为是缓存的问题,清了浏览器及代码中的缓存之后,访问还是不好用。

    这是什么鬼,TinkPHP的官方有点坑啊。

    查了一下,官方的重写是有问题的,最后一行可能是不对。应该是这样的。

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

    然后就好用了,竟然好用了!不得不说还得靠自己,官方也不太靠谱。

    有好的建议,请在下方输入你的评论。

关键字thinkphp php