当前位置: 首页 > 编程笔记 >

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

公西永嘉
2023-03-14
本文向大家介绍tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析,包括了tp5.0框架隐藏index.php入口文件及模块和控制器的方法分析的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

 类似资料:
  • 本文向大家介绍ThinkPHP框架里隐藏index.php,包括了ThinkPHP框架里隐藏index.php的使用技巧和注意事项,需要的朋友参考一下 本文所写的配置在ThinkPHP3.2.2上测试过。按理也兼容其它版本。 首先修改配置文件: 'URL_CASE_INSENSITIVE' => true, // 默认false 表示URL区分大小写 true则表示不区分大小写 'URL_MODE

  • 本文向大家介绍Yii隐藏URL中index.php的方法,包括了Yii隐藏URL中index.php的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Yii隐藏URL中index.php的方法。分享给大家供大家参考,具体如下: 一、修改config/下的main.php里的: 二、修改网站根目录下.htaccess文件内容如下: 更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yi

  • 本文向大家介绍thinkphp隐藏index.php/home并允许访问其他模块的实现方法,包括了thinkphp隐藏index.php/home并允许访问其他模块的实现方法的使用技巧和注意事项,需要的朋友参考一下 想要达成的效果很简单,我有两个模块,Home、Wechat。 http://localhost/index.php/home/index/index 缩短为: http://local

  • 我是Android上存储访问框架的新手。 谢谢

  • 本文向大家介绍javascript控制层显示或隐藏的方法,包括了javascript控制层显示或隐藏的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了javascript控制层显示或隐藏的方法。分享给大家供大家参考。具体实现方法如下: 希望本文所述对大家的javascript程序设计有所帮助。

  • 问题内容: 我有一个简单的Python脚本,该脚本使用selenium和webdriver在Chrome窗口中打开Facebook并自动登录。当我运行它时,Chromedriver控制台窗口将打开并保持打开状态,即使在整个程序执行完毕后,也要自行关闭它。 有没有办法隐藏此控制台窗口?我曾尝试为脚本保留一个“ .pyw”扩展名,但这无济于事,因为它不是脚本的控制台窗口,而是我希望隐藏的Chromed