HYPHP 防止网站模板HTML泄露方法

admin   ·   发表于 2016-6-26   ·   HYPHP

伪静态方案

apache .htaccess 改为

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
  RewriteRule View.*\.(html)$ http://127.0.0.1/ [R,NC,L] 
  	
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteRule ^(.*)$ index.php?s=$1 [QSA,PT,L]
</IfModule>

Nginx Conf

location / {
rewrite View.*\.(html)$ http://127.0.0.1/;
 if (!-e $request_filename) {
 rewrite  ^(.*)$  /index.php?s=$1  last;
 break;
  }
}

将访问View带有.html的 都跳转到 xxxxxxxxx

IIS方法 未提供(本人无IIS测试环境)

通用方案

该方案较为麻烦

在Con/config.php文件内容array中增加一项

....
array(
  ....
  ...
  'tpl_suffix'=>'.xxx'

)

将模板后缀改为 .xxx  (你想改为的名字)更改后 

你需要来到View目录 将所有.html 文件后缀改为 .xxx 

不想手动更改 可以寻找一些批量改后缀的程序!


不建议的方案

不建议从Action中更改display模板名称, 影响官方升级

不建议修改View目录 影响模板的资源文件调用

3 条回复   |  直到 2016-8-16 | 6318 次浏览

ins
发表于 2016-6-26

感谢大神分享

评论列表

  • 加载数据中...

编写评论内容

ical
发表于 2016-7-17

好厉害

评论列表

  • 加载数据中...

编写评论内容

loyaoo
发表于 2016-8-16

个人建议最好还是追加一个判断,

判断如果模板是PHP文件则像DZ那样,

不读取第一行文本。

<?php exit('非法访问!'); ?>

<div>模板内容</div>

评论列表

  • 加载数据中...

编写评论内容
登录后才可发表内容