Thinkphp3.2在根目录设置.htaccess和config.php设置URL_MODEL=2无法去掉url中的index.php原因

  • A+
所属分类:其他技巧

正常情况下,Thinkphp 中去掉url中的index.php 只需要改两个地方:

1.config.php设置URL_MODEL=2

Thinkphp3.2在根目录设置.htaccess和config.php设置URL_MODEL=2无法去掉url中的index.php原因

Thinkphp3.2在根目录设置.htaccess和config.php设置URL_MODEL=2无法去掉url中的index.php

2..htaccess中添加如下代码:

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

Thinkphp3.2在根目录设置.htaccess和config.php设置URL_MODEL=2无法去掉url中的index.php原因

Thinkphp3.2在根目录设置.htaccess和config.php设置URL_MODEL=2无法去掉url中的index.php

但是在集成环境BT宝塔上,仍然报错:404 not found nginx,这是什么原因呢?还需要配置什么,去实现Thinkphp去掉url中的index.php?解决404 not found nginx错误呢?

其实 方法很简单:

只需要在宝塔后台网站设置里的 伪静态 中添加代码:

if (!-d $request_filename){
set $rule_0 1$rule_0;
}
if (!-f $request_filename){
set $rule_0 2$rule_0;
}
if ($rule_0 = "21"){
rewrite ^/(.*)$ /index.php/$1 last;
}

Thinkphp3.2在根目录设置.htaccess和config.php设置URL_MODEL=2无法去掉url中的index.php原因

Thinkphp3.2在根目录设置.htaccess和config.php设置URL_MODEL=2无法去掉url中的index.php

然后再次访问时,就不会出现404 not found nginx了 我们的 ThinkPhp去掉url中的index.php的目的就实现了。

  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信公众号
  • 我的微信公众号扫一扫
  • weinxin
谈区块链

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: