原文链接1:https://blog.csdn.net/lw545034502/article/details/79374172/

原文链接2:https://www.cnblogs.com/chq3272991/p/5757673.html

1.Tp3.2.3中有几种路由模式

注:每种模式后面括号内的0,1,2,3代表TP中对应的编号
  第一种:普  通   模式(0):www.tp.nn/index.php?m=Home&c=Index&a=index
                      缺点:URL地址中显示内容太多,不安全
  第二种:pathinfo 模式(1):www.tp.nn/index.php/Home/Index/index  默认模式
                      优点:简化了URL地址
  第三种:rewrite  模式(2):www.tp.nn/Home/Index/index            个人建议使用模式
                      优点:简短,隐秘 (目录中不显示index.php)
                      使用rewrite模式需要两步操作:

  • apache中开启rewrite模块,修改配置文件
  • 将源码包中的.htaccess文件复制到项目根目录

第四种:兼  容   模式(3):www.tp.nn/index.php?s=/Home/Index/index

一般不使用该模式,只有当某些古老主机不支持pathinfo和rewrite模式,或者Apache没有开启pathinfo时使用。

2.TP5中apache隐藏入口文件

官方介绍是这样的:http://www.kancloud.cn/thinkphp/thinkphp5_quickstart/145250

可以去掉URL地址里面的入口文件index.php,但是需要额外配置WEB服务器的重写规则。

Apache为例,需要在入口文件的同级添加.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>

接下来就可以使用下面的URL地址访问了

http://tp5.com/index/index/index
http://tp5.com/index/index/hello

如果你使用的apache版本使用上面的方式无法正常隐藏index.php,可以尝试使用下面的方式配置.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>
但是还是不行,查到这么一篇文章(http://bbs.php100.com/simple/?t300372.html): Apache Rewrite 拟静态配置 1、mod_rewrite 简介和配置 Rewirte主要的功能就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则 表达式规范。平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等 如一个普通访问地址为      */php100.php?id=2 可以转成:    */PHP100_2.html 或转成:    */PHP100_2/ Apache配置: 支持httpd.conf 配置和目录 .htaccess配置 启用rewrite # LoadModule rewrite_module modules/mod_rewrite.so 去除前面的 # LoadModule rewrite_module modules/mod_rewrite.so 启用.htaccess AllowOverride None    修改为: AllowOverride All 2、mod_rewrite 规则的使用 RewriteEngine on RewriteCond %{HTTP_HOST} !^www.php100.com  [NC] RewriteRule   ^/(.*) http://www.php100.com/ [L] 启动rewrite引擎 判断主机 跳转到 RewriteEngine on RewriteRule ^/test([0-9]*).html$ /test.php?id=$1 RewriteRule ^/new([0-9]*)/$ /new.php?id=$1 [R] 3、mod_rewrite 规则修正符 1) R 强制外部重定向 2) F 禁用URL,返回403HTTP状态码。 3) G 强制URL为GONE,返回410HTTP状态码。 4) P 强制使用代理转发。 5) L 表明当前规则是最后一条规则,停止分析以后规则的重写。 6) N 重新从第一条规则开始运行重写过程。 7) C 与下一条规则关联 如果规则匹配则正常处理,以下修正符无效 8) T=MIME-type(force MIME type) 强制MIME类型 9) NS  只用于不是内部子请求 10) NC 不区分大小写 11) QSA 追加请求字符串 12) NE 不在输出转义特殊字符   \%3d$1  等价于 =$1 ----------------------------------------------------------------------------- 也就是最后还要补充这么处理:

把 #LoadModule rewrite_module modules/mod_rewrite.so 前面的#去掉, 
再把权限AllowOverride None都改为AllowOverride All ,重启apache

ThhinkPHP5隐藏入口文件index.php相关推荐

  1. nginx给php做统一入口,Nginx如何来配置隐藏入口文件index.php(代码)

    这篇文章给大家介绍的内容是关于Nginx配置 隐藏入口文件index.php,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. Nginx配置文件里放入这段代码server { loca ...

  2. ThinkPHP3.2URL重写隐藏应用的入口文件index.php

    可以通过URL重写隐藏应用的入口文件index.PHP,下面是相关服务器的配置参考: [ Apache ] httpd.conf配置文件中加载了mod_rewrite.so模块 AllowOverri ...

  3. php如何隐藏入口文件,PHP怎样隐藏入口文件

    这次给大家带来PHP怎样隐藏入口文件,PHP隐藏入口文件的注意事项有哪些,下面就是实战案例,一起来看一下. 第一步:开启apache重写模块 重启apache LoadModule rewrite_m ...

  4. laravel 隐藏入口文件

    在WAMP环境下也就是Windows,Apache,Mysql,PHP运行环境下,开启Apache环境的时候 laravel框架隐藏入口文件,只需在根目录public目录下的.htaccess文件中引 ...

  5. thinkphp 去掉URL地址里面的入口文件index.php

    可以去掉URL地址里面的入口文件index.php,但是需要额外配置WEB服务器的重写规则. 以Apache为例,需要在入口文件的同级添加.htaccess文件(官方默认自带了该文件),内容如下 ? ...

  6. ThinkPHP关于隐藏入口文件

    ThinkPHP关于隐藏入口文件 经过:今天要做一个项目的测试,URL中要类似: http://serverName/admin/index/index.html 然而现在的URL中是这样的: htt ...

  7. php好的mvc中index方法,创建一个mvc应用目录架构并创建入口文件index.php

    摘要:<?php require 'vendor/autoload.php'; require 'pig/Base.php'; define('ROOT_PATH',__DIR__.'/'); ...

  8. thinkphp5/phpstudy分析入口文件index.php及localhost和配置域名访问网站根目录www

    文章目录 1.thinkphp5入口文件简介 2.访问网站根目录www (1)localhost访问网站根目录www (2)配置域名访问网站根目录www 第一步:点击站点域名管理 第二步:站点域名设置 ...

  9. index.php文件下载,此文件时入口文件index.php,_PHP教程

    此文件时入口文件index.php, 此文件时入口文件index.php //定义一下ThinkPHP框架存放的路径 define('THINK_PATH','./ThinkPHP/'); //定义当 ...

最新文章

  1. android tomcat乱码问题,Tomcat在处理GET和POST请求时产生的乱码问题
  2. c# 正则过滤非中文字符
  3. CentOS 7 为firewalld添加开放端口及相关资料
  4. 机器学习入门笔记:(4.3)SMO算法
  5. 如何让PHP运行更高效
  6. Dynamips 简介
  7. mysql 唯一键和主键_MySQL唯一键和主键
  8. Netty工作笔记0049---阶段内容梳理
  9. Silverlight实用窍门系列:58.Silverlight中的Binding使用(三)-数据集合的绑定
  10. 通过IE私有滤镜让IE6 7 8支持背景透明,内容不透明效果
  11. 校园网免认证登录连接
  12. Stata:面板数据模型的完整步骤(NPL与企业绿色创新)
  13. 吾身听物化,化及事则休
  14. 科学计算机百分比怎么按成小数,手机计算器百分比怎么用
  15. java-net-php-python-java西藏文库计算机毕业设计程序
  16. 七天引爆社交新零售(助你提高十倍业绩)——前言
  17. unity-shader-延迟渲染
  18. 第十二周项目四----利用遍历思想求解图问题之7最远顶点
  19. 任正非最新讲话:18年华为没有1项原创发明
  20. 基于LM2576的降压电源的分析与设计

热门文章

  1. Linux运行hadoop命令,将hadoop程序打成jar包,在linux下以命令行方式运行(例如单词计算程序)...
  2. 如何保存文件为c语言格式,急求如何将下列C语言程序数据存储到文件中?
  3. shiny 发布部署到公开网站 ,供别人访问
  4. 【机器学习算法专题(蓄力计划)】一、机器学习简史和常用算法的梳理
  5. 三十二、教你Python制作简单的二维码
  6. tensorflow从入门到放弃(二)
  7. 博士申请 | 普渡大学郭齐教授组招收计算成像全奖博士生
  8. 直播 | 清华大学关健:利用自监督学习的开放端故事生成评价方法
  9. 哈佛NLP组论文解读:基于隐变量的注意力模型 | 附开源代码
  10. 2018年4月1日 蓝桥杯 C/C++B组答案 乘积尾零