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 相关文章推荐
分页显示Oracle数据库记录的类之二
Oct 09 PHP
PHP脚本的10个技巧(2)
Oct 09 PHP
MySQL授权问题总结
May 06 PHP
php面向对象全攻略 (一) 面向对象基础知识
Sep 30 PHP
php 网上商城促销设计实例代码
Feb 17 PHP
JS中encodeURIComponent函数用php解码的代码
Mar 01 PHP
php写入、删除与复制文件的方法
Jun 20 PHP
thinkPHP3.1验证码的简单实现方法
Apr 22 PHP
php 获取文件行数的方法总结
Oct 11 PHP
PHP实现通过CURL上传文件功能示例
May 30 PHP
Swoole 5将移除自动添加Event::wait()特性详解
Jul 10 PHP
Laravel框架基础语法与知识点整理【模板变量、输出、include引入子视图等】
Dec 03 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 eval函数用法总结
2012/10/31 PHP
php如何修改SESSION的生存存储时间的实例代码
2017/07/05 PHP
javascript之卸载鼠标事件的代码
2007/05/14 Javascript
iframe 上下滚动条如何默认在下方实现原理
2012/12/10 Javascript
javascript处理表单示例(javascript提交表单)
2014/04/28 Javascript
JavaScript中Number.NEGATIVE_INFINITY值的使用详解
2015/06/05 Javascript
jQuery插件windowScroll实现单屏滚动特效
2015/07/14 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
2016/05/20 Javascript
jQuery UI Bootstrap是什么?
2016/06/17 Javascript
jQuery中select与datalist制作下拉菜单时的区别浅析
2016/12/30 Javascript
js获取浏览器的各种属性
2017/04/27 Javascript
详解Vue路由开启keep-alive时的注意点
2017/06/20 Javascript
es6中的解构赋值、扩展运算符和rest参数使用详解
2017/09/28 Javascript
Vue的移动端多图上传插件vue-easy-uploader的示例代码
2017/11/27 Javascript
原生js封装的ajax方法示例
2018/08/02 Javascript
js+canvas实现画板功能
2020/09/13 Javascript
python网页请求urllib2模块简单封装代码
2014/02/07 Python
Python3基础之函数用法
2014/08/13 Python
Python序列之list和tuple常用方法以及注意事项
2015/01/09 Python
Python基于xlrd模块操作Excel的方法示例
2018/06/21 Python
django解决订单并发问题【推荐】
2019/07/31 Python
Python跑循环时内存泄露的解决方法
2020/01/13 Python
带有css3动画效果的兼容多浏览器简单导航条示例
2014/01/26 HTML / CSS
HTML5网页音乐播放器的示例代码
2017/11/09 HTML / CSS
做一个能自适应高度的textarea的示例代码
2019/09/06 HTML / CSS
法国春天百货官网:Printemps.com
2020/06/29 全球购物
资深地理教师自我评价
2013/09/21 职场文书
生物技术专业求职信
2014/06/10 职场文书
乡镇爱国卫生月活动总结
2014/06/25 职场文书
社区党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
酒店工程部岗位职责
2015/02/12 职场文书
费城故事观后感
2015/06/10 职场文书
学生会部长竞选稿
2015/11/19 职场文书
电工生产实习心得体会
2016/01/22 职场文书
如何将JavaScript将数组转为树形结构
2021/06/02 Javascript
SQL语法CONSTRAINT约束操作详情
2022/01/18 MySQL