Thinkphp5 如何隐藏入口文件index.php(URL重写)


Posted in PHP onOctober 16, 2019

大家好,我是Yangrl.

路由在框架中的作用打个比方的话,路由好比是WEB应用的总调度室,对于访问的URL地址,路由可以拒绝或者接受某个URL请求,并进行分发调度,而且还有一个副作用是因为路由规则可以随意定义,因此可以让你的URL请求地址更优雅,因为不会暴露实际的URL地址,也就意味着更安全——《ThinkPHP5路由完全指南》

在之前,比如我们要访问index 模块下的 Index控制器 下的index方法,在vhost(虚拟主机/虚拟域名)下,是这样的繁琐的一行URL地址:

tp5.com/index.php/index/Index/index

不舒服,不优雅(啧啧)对吧?所以我们学习路由,可以简化,可以DIY,不仅舒服好看,还提升了安全性等方面。

开始学习TP5路由部分,先记下隐藏入口文件index.php也就是URL重写的方法:

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

如果是集成环境,大概是已经开启了,我用的phpStudy 2018,默认开启了,地址在

盘符:\phpStudy\PHPTutorial\Apache\conf->CTRL+F搜索:mod_rewrite.so->如果前面有#号,删掉就表示加载了该模块。

Thinkphp5 如何隐藏入口文件index.php(URL重写)

二. 将AllowOverride None 的None改为 All:

这在phpStudy中也是默认ALL的,搜索AllowOverride会发现不止一个,那怎么选?改哪一个?你如果不确定,就都改!哈哈哈哈哈哈,其实我觉得就是第三步下面的directory中的allowoverride,见下图。

三. 搜索DocumentRoot 将根目录设置成你的入口文件所在目录:

默认是public目录.

Thinkphp5 如何隐藏入口文件index.php(URL重写)

四.修改.htaccess文件:

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

(其实现在的TP5版本.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]
</IfModule>

五.重启Apache服务器:

ojbk.

环境:phpStudy 2018/ThinkPHP5.0.14/php7/Apache

(如果是其他服务器,可参阅官方手册 URL重写)

以上这篇Thinkphp5 如何隐藏入口文件index.php(URL重写)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP脚本的10个技巧(5)
Oct 09 PHP
php侧拉菜单 漂亮,可以向右或者向左展开,支持FF,IE
Oct 15 PHP
PHP正确解析UTF-8字符串技巧应用
Nov 07 PHP
PHP反射机制用法实例
Aug 28 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
Nov 22 PHP
Symfony2使用Doctrine进行数据库查询方法实例总结
Mar 18 PHP
php构造函数与析构函数
Apr 23 PHP
一段实用的php验证码函数
May 19 PHP
php基于PDO连接MSSQL示例DEMO
Jul 13 PHP
php使用PDO事务配合表格读取大量数据插入操作实现方法
Feb 16 PHP
浅谈PHP的排列组合(如输入a,b,c 输出他们的全部组合)
Mar 14 PHP
详解提高使用Java反射的效率方法
Apr 29 PHP
在thinkphp5.0路径中实现去除index.php的方式
Oct 16 #PHP
laravel5.0在linux下解决.htaccess无效和去除index.php的问题
Oct 16 #PHP
laravel实现上传图片,并且制作缩略图,按照日期存放的代码
Oct 16 #PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
Oct 15 #PHP
解决Laravel自定义类引入和命名空间的问题
Oct 15 #PHP
laravel 如何实现引入自己的函数或类库
Oct 15 #PHP
Laravel 类和接口注入相关的代码
Oct 15 #PHP
You might like
php smarty函数扩展
2010/03/15 PHP
五款常用mysql slow log分析工具的比较分析
2011/05/22 PHP
PHP实现数组根据某个字段进行水平合并,横向合并案例分析
2019/10/08 PHP
JS应用之禁止抓屏、复制、打印
2008/02/21 Javascript
根据json字符串生成Html的一种方式
2013/01/09 Javascript
JS获取月的最后一天与JS得到一个月份最大天数的实例代码
2013/12/16 Javascript
浮动的div自适应居中显示的js代码
2013/12/23 Javascript
js下将金额数字每三位一逗号分隔
2016/02/19 Javascript
Javascript 详解封装from表单数据为json串进行ajax提交
2017/03/29 Javascript
Vue.js实现文章评论和回复评论功能
2020/05/30 Javascript
JavaScript中Object基础内部方法图
2018/02/05 Javascript
在 webpack 中使用 ECharts的实例详解
2018/02/05 Javascript
微信小程序事件 bindtap bindinput代码实例
2019/08/26 Javascript
转换layUI的数据表格中的日期格式方法
2019/09/19 Javascript
arcgis.js控制地图地体的显示范围超出区域自动弹回(实现思路)
2021/01/28 Javascript
[01:00:14]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第三场
2018/04/10 DOTA
windows下wxPython开发环境安装与配置方法
2014/06/28 Python
探寻python多线程ctrl+c退出问题解决方案
2014/10/23 Python
python多线程用法实例详解
2015/01/15 Python
Django 前后台的数据传递的方法
2017/08/08 Python
Python三级菜单的实例
2017/09/13 Python
python中dict使用方法详解
2019/07/17 Python
浅谈图像处理中掩膜(mask)的意义
2020/02/19 Python
Python tkinter实现简单加法计算器代码实例
2020/05/13 Python
简单聊聊H5的pushState与replaceState的用法
2018/04/03 HTML / CSS
canvas学习笔记之2d画布基础的实现
2019/02/21 HTML / CSS
canvas实现烟花的示例代码
2020/01/16 HTML / CSS
蒂芙尼澳大利亚官方网站:Tiffany&Co. Australia
2017/08/27 全球购物
金牌葡萄酒俱乐部:Gold Medal Wine Club
2017/11/02 全球购物
会计与审计专业大专生求职信
2013/10/03 职场文书
金融专业毕业生推荐信
2013/11/26 职场文书
捐书寄语赠言
2014/01/18 职场文书
学术会议通知范文
2015/04/15 职场文书
对公司的意见和建议
2015/06/04 职场文书
2019最新版股权转让及委托持股协议书范本
2019/08/07 职场文书
使用Selenium实现微博爬虫(预登录、展开全文、翻页)
2021/04/13 Python