thinkphp3.2.3中如何隐藏index.php及Home?

  • 内容
  • 相关

thinkphp3.2.3中如何隐藏index.php及Home模块名?我也是配置了一下实际的遇到了问题,在网上搜索了一下,总结一下写在这里供大家参考!

httpd.conf配置文件中加载了mod_rewrite.so模块

AllowOverride None 将None改为 All

把下面的内容保存为.htaccess文件放到应用入口文件的同级目录下

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

注意:

1、tp3.2.3在php5.6版本和版本以上的确会出现不能隐藏index.php,大多数伙伴只看文档里面提供的方法产生了误导。官方文档中.htaccess里面RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]在php5.6以下有用。要是php5.6或者php5.6以上就得改为RewriteRule ^(.*)$ /index.php?/$1 [L,E=PATH_INFO:$1]方能有效,(如果打开任何页面都有显示的主页,有可能是这个原因,替换一下就OK了!)

2.config.php里面设置 'URL_MODULE' => 2;

3.如果只有Home目录,没有Admin目录,还可以把Home目录隐藏。在入口文件index.php中添加一行 define('BIND_MODULE','Home');或者在config.php里面添加下面的代码配置:

// 允许访问的模块列表
'MODULE_ALLOW_LIST' => ['Home'],

本文标签:

版权声明:若无特殊注明,本文皆为《韩俊》原创,转载请保留文章出处。

本文链接:thinkphp3.2.3中如何隐藏index.php及Home? - http://www.vipshare8.com/wechat/416.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注