tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析


Posted in PHP onFebruary 11, 2020

本文实例讲述了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 -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>

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框架的PHP程序设计有所帮助。

PHP 相关文章推荐
基于HTTP长连接的&quot;服务器推&quot;技术的php 简易聊天室
Oct 31 PHP
PHP数组实例总结与说明
Aug 23 PHP
php 生成唯一id的几种解决方法
Mar 08 PHP
Eclipse的PHP插件PHPEclipse安装和使用
Jul 20 PHP
ecshop实现smtp发送邮件
Feb 03 PHP
php用ini_get获取php.ini里变量值的方法
Mar 04 PHP
php获取从html表单传递数组的方法
Mar 20 PHP
PHP易混淆知识整理笔记
Sep 24 PHP
php代码架构的八点注意事项
Jan 25 PHP
Yii框架实现图片上传的方法详解
May 20 PHP
PHP使用数组实现矩阵数学运算的方法示例
May 29 PHP
使用SMB共享来绕过php远程文件包含的限制执行RFI的利用
May 31 PHP
thinkphp5框架路由原理与用法详解
Feb 11 #PHP
php数组指针函数功能及用法示例
Feb 11 #PHP
PHP实现单例模式建立数据库连接的方法分析
Feb 11 #PHP
php-7.3.6 编译安装过程
Feb 11 #PHP
PHP实现Markdown文章上传到七牛图床的实例内容
Feb 11 #PHP
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
Feb 10 #PHP
tp5框架基于ajax实现异步删除图片的方法示例
Feb 10 #PHP
You might like
PHP - Html Transfer Code
2006/10/09 PHP
php文件读取方法实例分析
2015/06/20 PHP
PHP内置函数生成随机数实例
2019/01/18 PHP
Bootstrap与KnockoutJs相结合实现分页效果实例详解
2016/05/03 Javascript
如何利用JSHint减少JavaScript的错误
2016/08/23 Javascript
JavaScript制作简易计算器(不用eval)
2017/02/05 Javascript
基于JS实现仿百度百家主页的轮播图效果
2017/03/06 Javascript
AngularJS对动态增加的DOM实现ng-keyup事件示例
2018/03/12 Javascript
jQuery实现鼠标点击处心形漂浮的炫酷效果示例
2018/04/12 jQuery
JavaScript this绑定过程深入详解
2018/12/07 Javascript
layui的表单验证支持ajax判断用户名是否重复的实例
2019/09/06 Javascript
vue实现图片懒加载的方法分析
2020/02/05 Javascript
如何配置vue.config.js 处理static文件夹下的静态文件
2020/06/19 Javascript
python模拟鼠标拖动操作的方法
2015/03/11 Python
Python httplib模块使用实例
2015/04/11 Python
Django学习笔记之ORM基础教程
2018/03/27 Python
Python使用LDAP做用户认证的方法
2019/06/20 Python
Django基础知识 web框架的本质详解
2019/07/18 Python
用Python将Excel数据导入到SQL Server的例子
2019/08/24 Python
python集合常见运算案例解析
2019/10/17 Python
6行Python代码实现进度条效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI库)
2020/01/06 Python
解决python对齐错误的方法
2020/07/16 Python
世界上最大的皮肤科医生拥有和经营的美容网站:LovelySkin
2021/01/03 全球购物
大唐面试试题(CPU,UNIX等等)
2012/01/11 面试题
机电专业毕业生推荐信
2013/11/10 职场文书
2013英文求职信模板范文
2013/11/15 职场文书
行政助理工作职责范本
2014/03/04 职场文书
乡镇食品安全责任书
2014/07/28 职场文书
一份恶作剧的检讨书
2014/09/13 职场文书
农村党支部书记党群众路线四风问题整改措施
2014/09/26 职场文书
广告设计专业毕业生自我鉴定
2014/09/27 职场文书
文明单位创建材料
2014/12/24 职场文书
孝老爱亲事迹材料
2014/12/24 职场文书
中国十大神话动漫电影排行榜 哪吒登顶 白蛇缘起排第七
2022/03/21 国漫
Win11查看设备管理器
2022/04/19 数码科技
windows server 2016 域环境搭建的方法步骤(图文)
2022/06/25 Servers