防止别人通过路径查看你的模板文件方法汇总apache篇

很多时候我们写完代码只关心功能的问题,却忽略一些细节的小问题,之前的一篇已经介绍了nginx下如何禁止的办法,今天我给大家分享一个禁止用户直接访问模板的问题

一般普通用户是不会做这种事情的,但万一别个也是做程序的人,就有可能知道你模板路径的情况下直接访问你的模板,例如:后台的这样一个模块

tpframe 后台模板

别人就可以通过http://你的域名/theme/backend/menu/index.html 而查看你的模板文件,不须要任何验证,然后像查看普通html源码那样查看到你的模板文件代码

tpframe 后台模板源码

不管是什么框架,都有可以存在这样的问题,那么通过哪些方法可以避免这些问题呢,下面给大家分享几点办法,部分内容来自互联网收集

1、在文件夹下面用.htaccess文件(apache)配置限定

<FilesMatch ".(html|php|exe)$">
order allow,deny
deny from all
</FilesMatch>

就上面的这种情况就在theme下面创建.htaccess文件加入上面的内容即可

当然你可以在具体的html模板所在访目录,例如\theme\backend\menu\里面添加.htaccess文件加入上面的代码,但这样写要在每一个模板里面加,显示有得麻烦,所以我就直接在最上层模板目录里面统一加了,上面的的意思表示禁止访问以html、php、exe结尾的文件,当然你不能禁止所有,因为图片跟css是须要能访问的

2、配置.htaccess文件

还可以通过另外的一种配置方式RewriteRule来达到目的

注意:此时的.htaccess文件是在根目录里面配置,配置内容例如:

<IfModule mod_rewrite.c>
Options +FollowSymlinks -Multiviews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule theme/(.*).(html)$ – [F]
</IfModule<

关键代码RewriteRule theme/(.*).(html)$ – [F],表示禁止访问theme下面的所有.html文件

3、调整目录位置

把模板或不能让用户直接访问的文件放到WEB目录外面

你们下载的thinkphp5.x版本可以看到,里面有一个public文件夹,默认入口文件就是放到这个文件夹(index.php)里面,因此很多用户习惯配置文件根目录在上级目录,这种情况你访问网站就是这样访问的:http://你的域名/public/index.php,这路径明显多了一个public,你看着肯定很不舒服吧,因此正确的配置网站根目录应该指定到public文件夹

thinkphp 目录结构

这样你就可以直接通过你的域名直接访问了http://你的域名/index.php

严正声明:本站只出售html页面效果模板,不提供任何类型的网站内容数据,模板仅供学习交流使用,不得用于任何商业以及触犯国家法律法规的用途,违者需自行承担全部责任,与本站无以及模板设计作者无关,本站以及模板作者不承担任何连带责任!!!!
关爱邦 | 网站源码程序下载_免费商业源码分享! » 防止别人通过路径查看你的模板文件方法汇总apache篇

发表评论

提供最优质的资源集合

立即查看 了解详情