Categories


Tags


常见程序搜索关键字转码

个别搜索类的网站因为用户恶意搜索出现误拦截情况,这类网站本身没有非法信息,只是因为把搜索关键字显示在网页中(如下图)

,可以参考下面方法对输出的关键字进行转码

image.png

DEDECMS程序

本文针对Dedecms程序进行搜索转码,其它程序原理类似:对搜索结果的关键字进行转码后输出

一:查看网站编码,访问后台下面会显示,GBK和UTF8两个版本

image.png

二:复制下面代码到 include/extend.func.php 文件尾部(根据您的网站编码复制对应的代码,编辑网页时推荐使用notepad、editplus软件)

UTF-8编码

function CharCodeAt($str)

{

$strr="";

for($i=0;$i<mb_strlen($str,'utf-8');$i++){

$char = mb_substr($str,$i,1, 'UTF-8');

if (mb_check_encoding($char, 'UTF-8'))

{

$ret = mb_convert_encoding($char, 'UTF-32BE', 'UTF-8');

$strr.="&#".hexdec(bin2hex($ret));

}

else

{

return null;

}

}

return $strr;

}

GBK编码

function CharCodeAt($str)

{

$strr="";

for($i=0;$i<mb_strlen($str,'gb2312');$i++){

$char = mb_substr($str,$i,1, 'gb2312');

if (mb_check_encoding($char, 'gb2312'))

{

$ret = mb_convert_encoding($char, 'UTF-32BE', 'gb2312');

$strr.="&#".hexdec(bin2hex($ret));

}

else

{

return null;

}

}

return $strr;

}

三:修改搜索模板文件templets/default/search.htm  【其它模板可能路径会有变化】

找到: {dede:global name='keyword' function='RemoveXSS(@me)'/}

替换成:{dede:global name='keyword' function='CharCodeAt(RemoveXSS(@me))'/}

四:查看搜索页源代码,查看是否生效

image.png

Discuz 程序,示例针对Discuz!X3.4  GBK版本

一、查看网页编码

1.网页右键查看源代码

blob.png

2.查看config/config.php 的$_config['output']['charset']

blob.png

二、根据编码复制上面的CharCodeAt函数,修改 source/function/function_search.php 文件,加到文件尾部,注意在?> 前面

blob.png

三、修改source/module/search/search_forum.php 程序

在129行添加如下两行代码

$keyword = CharCodeAt($keyword);

$modkeyword = CharCodeAt($modkeyword);

blob.png

四、查看搜索页源代码,检查是否生效

blob.png

来源:西部数码


Public @ 2022-08-05 15:44:44

从IIS的ASP迁移到APACHE的PHP的方法

目前在网站服务器软件市场中,开放源码的Apache服务器占据了60%的市场份额,而微软免费捆绑在操作系统当中的IIS排名第二,其市场份额为31%,从总体上看,目前的网站服务器软件市场已经被Apache和IIS瓜分。一般从性能上通常都认同Apache的性能优于IIS,虽然IIS的操作管理界面非常简单易用,但是从IIS平台迁移到Apache平台依然是大势所趋,今天我就介绍几种从IIS的ASP转换到Ap

Public @ 2015-02-18 15:46:21

令网站打开提高速度的7大秘方

1. 优化图片:使用适当的格式和尺寸来实现快速加载图片。 2. 压缩文件:压缩文件大小以减少加载时间。 3. 简化代码:消除不必要的代码,使页面更轻量级,加载更快。 4. 将CSS和JS文件放在顶部:这会在页面加载时优先加载CSS和JS,并且减少延迟。 5. 使用CDN:CDN(内容分发网络)通过运用多个位于全球各地的服务器来缓存和分发网站内容。这可以显著加快网站的加载时间。 6. 使缓

Public @ 2023-06-24 16:00:10

杰奇CMS如何实现百度友好度

杰奇CMS实现百度友好度主要有以下几个方面: 1. 响应式布局:杰奇CMS可以根据不同的设备大小和分辨率自动调整页面布局,确保网站在不同设备上都能够正常显示。 2. 网站结构优化:杰奇CMS通过优化网站结构、清晰的标签语义化等方式,提高网站的可读性和可访问性,从而为搜索引擎爬虫提供良好的索引环境。 3. 关键词优化:杰奇CMS支持在后台管理页面中对网站的关键词进行设置和调整,同时提供关键词密

Public @ 2023-05-30 14:00:28

更多您感兴趣的搜索

0.404285s