时间:2021-05-26
本文实例讲述了tp5.0框架隐藏index.php入口文件及模块和控制器的方法。分享给大家供大家参考,具体如下:
1. 隐藏入口文件:
[ IIS ]
在IIS的高版本下面可以配置web.Config,在中间添加rewrite节点:
<rewrite> <rules> <rule name="OrgPage" stopProcessing="true"> <match url="^(.*)$" /> <conditions logicalGrouping="MatchAll"> <add input="{HTTP_HOST}" pattern="^(.*)$" /> <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> </conditions> <action type="Rewrite" url="index.php/{R:1}" /> </rule> </rules> </rewrite>[ Apache ]
httpd.conf配置文件中加载了mod_rewrite.so模块
AllowOverride None 将None改为 All
把下面的内容保存为.htaccess文件放到应用入口文件的同级目录下
<IfModule mod_rewrite.c>Options +FollowSymlinks -MultiviewsRewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]//此处与官网不同,官网是这样写,尝试不中,修改成一下可以RewriteRule ^(.*)$ index.php [L,E=PATH_INFO:$1]</IfModule>2. 模块和控制器隐藏:
public目录下的index.php入口文件里添加define('BIND_MODULE', 'index/index');,如下:
<?php// [ 应用入口文件 ]define('BIND_MODULE', 'index/index');// 定义应用目录define('APP_PATH', __DIR__ . '/../application/');// 加载框架引导文件require __DIR__ . '/../thinkphp/start.php';设置后,我们的URL访问地址则变成:
http://serverName/index.php/操作/[参数名/参数值...]
扩展:
tp5.1隐藏控制器和模块与5.0不同,入口文件中修改如下:
Container::get('app')->bind('index/index')->run()->send()更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
踩坑!官网给的解决方案:解决重写URL,省去index.php问题可以通过URL重写隐藏应用的入口文件index.php,下面是相关服务器的配置参考:[Apac
一、文件结构建立3个文件夹controller文件夹存放控制器文件view文件夹存放视图文件model文件夹存放数据文件建立1个index.php作为唯一入口二
秉承MVC架构的思想,CI中的所有控制器都需要经过单点入口文件index.php(默认)来加载调用。也就是说,在默认情况下,所有CI开发项目的URL都形如以下这
本文实例讲述了thinkPHP基于反射实现钩子的方法。分享给大家供大家参考,具体如下:ThinkPHP框架的控制器模块是如何实现前控制器、后控制器,及如何执行带
本文实例讲述了TP5.0框架实现无限极回复功能的方法。分享给大家供大家参考,具体如下:最近做项目的时候用到了评论回复,使用ThinkPHP5.0框架做回复碰到了