ThinkPHP 您现在的位置是:首页 > 开发笔记 > ThinkPHP

ThinkPHP 5.1重写.htaccess解决方法

来源:惠达浪原创 发布时间:2018-06-28 最后更新:2019-05-11 2664已围观

摘要有时候,TP5.1自带的.htaccess重写规则无效,造成网站打不开,解决办法有两种。

ThinkPHP 5.1.x,默认的重写规则并不是十分好用,今天我安装了一个全新的5.1之后,发现网站只能用默认的域名打开,而其它URL则是必须加上index.php才能访问。不用问,这肯定是重写规则的事儿了。关于这个问题,已经有多次遇到,这里我给出两个方法,一个是常见的,另一个是在网上找到的,也是有效的。

原来的.htaccess文件内容如下:

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

解决方法一:

在index.php后边加上个?

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

解决方法二:

将index.php后边的内容删除,改为[L,E=PATH_INFO:$1]

  Options +FollowSymlinks -Multiviews
  RewriteEngine On
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]

经测试,两种方法都好用。

很赞哦! (485)


站点信息

  • 网站平台ThinkCMF 5.1.5
  • PHP版本:7.3.31
  • QQ交流群: 惠达浪技术交流