帖子菜单

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

admin 2016-6-26

伪静态方案

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目录 影响模板的资源文件调用

ins

# 1楼 2016-6-26 点评

感谢大神分享

ical

# 2楼 2016-7-17 点评

好厉害

loyaoo

# 3楼 2016-8-16 点评

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

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

不读取第一行文本。

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

<div>模板内容</div>

踩 (0)
赞 (1)
查看 (6333)
登陆后才可发表内容