可以通过URL重写隐藏应用的入口文件index.PHP,下面是相关服务器的配置参考:

[ Apache ]

  1. httpd.conf配置文件中加载了mod_rewrite.so模块
  2. AllowOverride None 将None改为 All
  3. 把下面的内容保存为.htaccess文件放到应用入口文件的同级目录下
  1. <IfModule mod_rewrite.c>
  2. RewriteEngine on
  3. RewriteCond %{REQUEST_FILENAME} !-d
  4. RewriteCond %{REQUEST_FILENAME} !-f
  5. RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
  6. </IfModule>

[ IIS ]

如果你的服务器环境支持ISAPI_Rewrite的话,可以配置httpd.ini文件,添加下面的内容:

  1. RewriteRule (.*)$ /index\.php\?s=$1 [I]

在IIS的高版本下面可以配置web.Config,在中间添加rewrite节点:

  1. <rewrite>
  2. <rules>
  3. <rule name="OrgPage" stopProcessing="true">
  4. <match url="^(.*)$" />
  5. <conditions logicalGrouping="MatchAll">
  6. <add input="{HTTP_HOST}" pattern="^(.*)$" />
  7. <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
  8. <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
  9. </conditions>
  10. <action type="Rewrite" url="index.php/{R:1}" />
  11. </rule>
  12. </rules>
  13. </rewrite>

[ Nginx ]

在Nginx低版本中,是不支持PATHINFO的,但是可以通过在Nginx.conf中配置转发规则实现:

  1. location / { // …..省略部分代码
  2. if (!-e $request_filename) {
  3. rewrite ^(.*)$ /index.php?s=$1 last;
  4. break;
  5. }
  6. }

其实内部是转发到了ThinkPHP提供的兼容模式的URL,利用这种方式,可以解决其他不支持PATHINFO的WEB服务器环境。

如果你的ThinkPHP安装在二级目录,Nginx的伪静态方法设置如下,其中youdomain是所在的目录名称。youdomain需要按照入口文件index.php的目录来确定。

  1. location /youdomain/ {
  2. if (!-e $request_filename){
  3. rewrite ^/youdomain/(.*)$ /youdomain/index.php?s=$1 last;
  4. }
  5. }

原来的访问URL:

http://serverName/index.php/模块/控制器/操作/[参数名/参数值...]

设置后,我们可以采用下面的方式访问:

http://serverName/模块/控制器/操作/[参数名/参数值...]

默认情况下,URL地址中的模块不能省略,如果你需要简化某个模块的URL访问地址,可以通过设置模块列表和默认模块或者采用子域名部署到模块的方式解决,请参考后面的模块和域名部署部分。

转载于:https://www.cnblogs.com/gongchixin/articles/7157416.html

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

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

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

  2. ThhinkPHP5隐藏入口文件index.php

    原文链接1:https://blog.csdn.net/lw545034502/article/details/79374172/ 原文链接2:https://www.cnblogs.com/chq3 ...

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

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

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

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

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

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

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

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

  7. phpyii框架倒叙_Yii框架入口文件index.php功能分

    在YII代码自动生成工具生成的项目下,有一个index.php文件.这个文件是整个基于yii框架的web项目的启动入口文件.默认情况下,访问路径为:http://hostname:port/webro ...

  8. Nginx隐藏PHP入口文件index.php

    如果没有自定义域名,则打开Nginx配置文件:nginx-conf 对应着改 如果自定义了域名,则打开Nginx配置文件:vhosts-conf 对应着改 location / {index inde ...

  9. index.php g wap,代码阅读--wap端入口文件index.php

    /** * 手机接口初始化文件 * @copyright Copyright (c) 2007-2013 ShopNC Inc. (http://www.shopnc.net) * @license ...

最新文章

  1. P1515 旅行(简单搜索)
  2. poj1064(二分查找)
  3. spring的BeanWrapper类的原理和使用方法
  4. gps matlab teqc,TEQC multipath metrics in MATLAB
  5. 【Linux】一步一步学Linux——netstat命令(166)
  6. 一步步部署基于Windows系统的Jenkins持续集成环境
  7. Registry注册机制
  8. Mockito—参数匹配
  9. 删除节点命令removeNode
  10. react中将html字符串渲染到页面
  11. html中label宽度设置、非替换元素和替换元素
  12. flume1.8 TailDirSource断点续传与文件更名后数据重复采集的bug修复
  13. 折腾家里的龟速网络有感
  14. us排名2019计算机专业排名,2019 USNews美国大学计算机专业排名
  15. 文件格式转换DOS到UNIX:dos2unix+UltraEdit(解决no such file or directory问题)
  16. 微信h5页面实现人脸注册和登陆
  17. uniapp页面适配平板和手机
  18. 计算机病毒是怎么工作的,计算机病毒是如何工作的(转载)
  19. 从0 到1开发一款App(三):设计
  20. VISA 函数的运用解释

热门文章

  1. Go 源码里的这些 //go: 指令,go:linkname 你知道吗?
  2. IPython 更改默认字体大小
  3. vscode 高效使用指南
  4. java局部变量全局变量,实例变量的理解
  5. 【读书笔记】知易行难,多实践
  6. 北汽蓝谷极狐阿尔法S与T
  7. Paddle广播 (broadcasting)
  8. 2021年大数据常用语言Scala(二十五):函数式编程 排序
  9. Duplicate class xxx
  10. Recyclerview 添加一个数组