由于涉及到多重缓存,所以技术性偏强,没有一定技术基础的外贸人就不要过多研究了。

关于缓存,本文已经尽量详细解释了,如果不成功,我也不想过多去解答。

实际上,为了实现这个功能,给自己访问网站也会带来一些不便。所以再次提醒一下,如果不是有着强烈的需求,建议别折腾。

特点:IP屏蔽+浏览器语言识别+Cookie访问权限

你会选择禁止他们访问吗?这是一个让人心烦的问题。

实际上,除了这些考虑因素之外,还有竞争性方面的考虑。

我的外贸课程有一定比例的学员是外贸SOHO和外贸刚起步的startup公司,刚刚开始学习并尝试自建站,总是会时不时问到:如何能屏蔽国内同行对其网站的访问?屏蔽国内同行,目的很简单,只是为了信息保护,防止同行的跟风copy。

Brian也曾担心过是否会有同行有意或者无意中看到他们的英文网站,所以一度想过,是否要做一些访客流量的限制。但是由于他对网站技术一窍不通,缺乏必要的基础,最后也不知道如何去弄,最终也忽视了,没有做任何的防范措施。

谁知道,才过了一个多月后,有其他同行模仿做了类似的款式,并且放到阿里巴巴上橱窗产品里去了!

这位Brian学员非常怀疑是该同行访问了他们的英文网站,抄袭了他们的设计和功能。而他还没来得及去申请专利,所以觉得特别头疼和心塞!!

最后,他来问我,是否有办法能屏蔽国内同行访问?

关于自己设计和研发的新款,被同行copy的这件事,真正的原因是否真的如他所说,因为被同行看了网站而导致的,还是另有其它什么原因,我不得而知。毕竟商场如战场,什么事都可能发生。

但也只是说说思路,并没有去尝试如何实现。而这位学员的事情发生后,我花了几个小时写代码和测试,最终发现可以实现!

通常屏蔽特定国家流量访问,我们常见的一些WP插件工具,方法主要是第一种:根据IP地址地理位置IP(GEOIP)进行国家地区地判断,进行对应地屏蔽。显然,这种方式效果不太好。而另一种方式,识别判断访问者的浏览器内置的语言编码,或者操作系统的语言,就可以差不多解决套个代理换个国外IP就可以访问的问题了。

这两种屏蔽访问的方式,即使是第一种方式(GEOIP),WordPress插件里也很多都是付费版插件里才提供这个功能。而第二种按浏览器语言或操作系统语言的方式,WordPress还没有任何相应的插件。

当然,像我这种有一定基础的业余Coder来说,不那么喜欢用插件,还是喜欢直接上代码。无论哪一种方式,要用代码实现,都不是太难。但对外贸人来说,要实现还是需要一点点基础和大胆尝试的,起码你得装个文(代)本(码)编辑器吧?记事本之类的还是算了!(常见的文本编辑器,还是推荐notepad++或sublimetext3)

废话不多说,在你的网站当前所用主题的文件夹下,找到header.php,使用文本编辑器打开。在之前加上下面的代码,保存,上传覆盖原header.php文件。

假设你要屏蔽国内同行的IP访问(同样地,你自己也只能代理方式访问了)。首先你必须有个判断GEOIP的模块。在VPS上你可以在nginx上安装geoip模块,但是安装和使用上还是麻烦了点。并且,如果你用的是虚拟主机,那就无法自己随心所欲安装扩展模块了。

所以,我们可以借用第三方IP库的API接口。比如淘宝的IP库,IP138的IP库等等,判断都非常准确。具体代码:

另外,为了防止国外调用ip.taobao.com的判断国家地区的getIpInfo.php文件速度慢,最好在上面代码下面再加一行dns预解析代码,加快载入文件。

如果你是SiteGround虚拟主机的用户,你需要在WP后台点击一下顶部的PurgeSGCache按钮来清理缓存。前提是,你之前在Cpanel里WordPressTools下–SuperCacher里面,开启了LEVEL1,LEVEL2和LEVEL3的缓存功能(开启之后,控制是用SGOptimizer控制)。

如果你安装过任何缓存类的插件,也注意清理一下缓存。因为你的首页会被你的主机缓存,甚至有些缓存插件会利用浏览器缓存。

关于方式二,我认为根据浏览者的浏览器语言编码来判断已经足够,所以这里不必再去研究判断访客的操作系统语言的方法了。

每个浏览器都会有个语言编码,如中文最常见的是zh或zh-CN。

利用访问者的浏览器语言类型进行判断并屏蔽:

所以如果你要排除这些情况,可以再做一个if判断。稍作修改:

注意:如果你使用Avada,Betheme等主题,请放到的上面。

以上两种方式在chrome,firefox以及sougou浏览器测试下,一切正常。

1)可不可以两种方式结合起来?ofcourse,whynot!代码都扔到之前即可,不过这样的话你可能用了代理也访问不了自己的网站了,呵呵。那怎么办呢?下文会介绍方法。

2)上面的两种方式,把屏蔽的访问转向百度了,这多少有点刻意跳转的意思,容易引人怀疑。

3)这种分流方式也可以用在marketing上,把不同地区流量的潜在客户,导到不同的landingpage上。或者你玩多站点,你也可以设置导流。

站长在访问网站前,先访问一个任何人都不知道的页面,获取浏览器特定的cookie,相当于获取通行证。

4.1)在网站根目录下(如果是虚拟主机,则网站根目录大多是在public_html目录下;如果是VPS则大多是在/home/wwwroot/www.abc.com/下),放一个php文件。

取名getcookie.php,或letmein.php,或任何你觉得好记的名字。为了安全起见,你最好自己取个名字,不要用我示范的文件名。

代码如下:(请自行修改网站网址,把域名换成你的)

下载完js.cookie.js文件,上传到你的网站根目录下。跟getcookie.php一个目录下。

当然你还可以再检查一下:F12调出审查元素工具窗口,点击最上面一行里的Application。然后点击下方左侧的Cookie,如果看到有一行名为WebsiteOwner的Cookie记录,则说明赋予Cookie成功。

此时再访问自己的网站,即可正常访问。

2)在主题文件夹下,header.php文件的前放下面的代码

(注意:如果你使用Avada,Betheme等主题,如果放上面不行,放到上面即可)

一般同行来访问,没有正确的cookie值,是进不去的。而你要进去,先访问你网站根目录下的getcookie.php或letmein.php文件即可。

这就解决了方式二的浏览器语言编码通杀的问题。

思维导图来小结吧:

有人会说了,怎么结合起来用呢?

先从②和③开始检查:

1)你WP后台有没有安装任何缓存类的插件?有:清理缓存(flushcache/purgecache)。没有:无需任何操作。建议清理完缓存后,先停用缓存插件。因为你要反复调试屏蔽代码。等确定添加的功能代码运行正常后,再重新启用缓存插件。

2)你没有清理本地电脑上浏览器的缓存?为了提高网页访问速度,有些缓存插件会使用浏览器缓存。原理是:第一次访问网页时就在本地浏览器缓存中生成该网站的页面,让你从第二次访问开始,之后的每次访问直接从你浏览器缓存里获取,而不是去网站获取最新的页面。所以你需要把你Chrome浏览器的缓存也手动清理一下,Chrome浏览器右上角菜单按钮-更多工具-清理浏览数据,选择“缓存的图片和文件”。如果你想清除cookie,也一并勾上,点击清除数据按钮。

上面这两类缓存都容易清理。第一类虚拟主机自带的缓存,要稍微复杂一点点。

3)你的虚拟主机是否自动开启了自带的缓存?常见的外贸人用的虚拟主机是SiteGround或Bluehost。前者有个SuperCacher缓存系统,后者有个EnduranceCache系统。

***如果用的是SiteGround虚拟主机,SiteGround应该在网站后台自带安装了管理SuperCacher的WordPress插件:SGOptimizer。点击进去,出现配置界面。在SuperCacherSettings下,DynamicCaching下面有个ManualCachePurge(手动清理缓存),点击清理一下。

然后第二项:EnvironmentOptimization之下,先不要开启BrowserCaching,GZIPCompression可以开启。其他的不用管。第三个选项卡下,注意其它都可以勾选,MinifyJavaScriptFiles这一项不要勾选,JS文件代码的压缩,容易出问题。

然后点击顶部的PurgeSGCache。这样即可清理掉所有SiteGround生成的缓存。

***如果你用的是Bluehost虚拟主机,先在WP后台EndurancePageCache这里,清理一下PageCache。点击PurgeCache清理缓存的按钮

清理完了PageCache,你再看上面那里BrowserCache那里,它没有任何清理按钮,是因为这种缓存插件让你的浏览器第一次访问的时候也在浏览器里生成了缓存。所以你需要清理浏览器中的缓存。

然后,在WP后台,Setting里面,会有个EnduranceCache-CacheLevel的选项,选择Off。

然后在Bluehost后台,Performace这里,勾选CachingOff,这样就顺利关闭了Bluehost自带的缓存。

打开Chrome浏览器的设置,点击菜单–设置(Settings)–高级–语言,然后把英语移到顶部。

通过这种办法,可以修改浏览器语言,进而影响HTTP_ACCEPT_LANGUAGE的判断。

THE END
1.免费阅读相关英语文章 学霸都爱用的免费英语学习网站>> 词义辨析 permission, permit 这两个词共同的意思是“许可”。它们的区别是:permit为官方签发的“通行证,许可证”; permission通常指口头的“许可”。例如:You have my permission to leave.我准许你离开。 速记技巧 联想记忆法 per-贯穿、每次+-miss-https://dict.ruihongw.com/permission
2.rights是什么意思rights怎么读中文意思用法rights rights是什么意思、rights怎么读 读音:英[ra?ts] 美[ra?ts] rights 基本解释 n. 认股权;右边( right的名词复数 );权利;右手 v. 纠正( right的第三人称单数 );公正对待;整理;补偿 rights 词性变化 原型:right 词组短语https://danci.gjcha.com/rights.html
3.authority在中世纪英语中,“权力”也意味着“从良好的声誉中获得的权力; 说服人们的力量,激发信任的能力。”从17世纪开始,“权威人士”的含义出现;the authorities指“那些掌权、拥有警察权力的人”始于19世纪中期。 authority_法律行业词汇 委托的权限 授权 authority儿童词典英英释义 https://www.yswxk.com/en-detail/873e9c0b50183b613336eea1020f4369
4.sanction「许可;准许;准予;惩罚」名词 sanction是在15世纪进入英语,意思是“权威批准”或“强制措施”,最初指正式的指令或法律;如教会法令。(拉丁语 sancire 意思“to make holy「使神圣」”,指祖先。) 它随后扩展到了与之不同的含义。到17世纪末,它既指强制法律手段(在20世纪开始用于指对特别违反国际法的国家进行经济的处罚),也指正式https://baijiahao.baidu.com/s?id=1738685935838553629&wfr=spider&for=pc
5.accessible(adj.可访问的):通常指的是某个对象资源或功能在逻辑在软件开发中,“accessible”通常指的是某个对象、资源或功能在逻辑上或物理上对用户或程序是可达的,即用户或程序能够方便地获取和使用这些对象、资源或功能。这种可访问性可能受到多种因素的影响,包括系统的架构设计、用户界面设计、数据访问权限、网络连接状态等。 https://www.55kaifa.com/ruanjiankaifacihuishuyu/2827.html
6.权限用英语怎么说权限英文怎么写怎么读单词语音短语权限 permissions (点击试听读音) 网络解释 1.jurisdiction 2.limits of authority 权限的英文 权限英文怎么写 权限用英语怎么说 权限英语怎么读 语音 单词 短语 例句 翻译https://www.bi0.cn/fanyi/j0Q4T0.html
7.权限英文怎么写权限的英语怎么说沪江英语词库精选权限英文怎么写、权限用英语怎么说及怎么读、权限的英语怎么说、权限的英语读音及例句。https://www.hujiang.com/ciku/15790_1008391389/
8.英文的开机关机怎么写英文关机怎么写 1. 英语中开机关机怎么说 开机的英文:starting up;关机的英文:turn off a machinemachine 读法 英 [m?i?n] 美 [m?i?n]短语:1、packaging machine 包装机,包装机械;打包机;封装机2、drilling machine 钻床;钻孔机3、packing machine 包装机;打包机扩展资料词语用法:https://www.xuexi88.com/etagid338647b0/
9.超越权限用英语怎么说,怎么拼写读念,超越权限的英文翻译读音“超越权限”的英语拼写、翻译、音标、读音、用法、例句。http://ce.newdu.com/351136.html
10.权限的英文怎么说,limitstorights翻译对吗权限的英文怎么说,limits to rights翻译对吗 摘要:英语词汇是备考雅思考试时听说读写四个单项必不可少的一部分,没有词汇量或是词汇记忆方法不对,都会让考生难以取得高分。当然词汇积累与应用的过程并非一蹴而就的,因为人的记忆有个漫长的规律:记住—遗忘—重复记忆—遗忘—记住的规律。因此,在平时学习的过程中,就https://sh.xhd.cn/ielts/cihui/883138.html
11.“权限”用英语该用哪个?权限privilege和authorization“权限”是我们设计系统必不可少的,关于“权限”的英语单词也很多,该用哪个呢?我参照有关“权限”的英文软件,总结如下,不足之处,多多指正: Permission:权限,包括动作和客体,比如:添加文档,“添加”是动作,“文档”是客体。相近的也有:Access Control。 https://blog.csdn.net/youxiaxk/article/details/5299669
12.权限英语怎么写什么意思?权限.. 翻译原文(简体中文):权限 更多:https://www.bmcx.com/ 翻译结果(英语)1: Permissions 更多:https://www.bmcx.com/ 翻译结果(英语)2: Permissions 更多:https://www.bmcx.com/ 翻译结果(英语)3: authority 更多:https://www.bmcx.com/ https://fanyi.bmcx.com/c3895c6mtl97__fanyi/
13.aTimeLogger和TimeTrack的使用常见问题合集更多-设置-通知栏设置,还要检查手机是否设置了通知栏权限,有时候仍然不显示,还可以随便开始个新活动试试。 软件有bug找谁反馈? 直接在群内找开发者@Sergei(微信:zaplitny),尽量用英语。 怎样成为志愿者帮助推广/改进翻译等? 欢迎,小问题可以直接群聊,大问题或者长期改进可以直接联系群主@涂俊杰或是@Sergei https://www.douban.com/note/740829569/
14.幼儿园岗位职责(15篇)2、副园长职责、权限 负责幼儿园的教学服务工作质量,贯彻执行幼儿园的质量方针,对质量目标完成情况负责。 负责教学过程各环节的实施及对教师教学能力和教学过程的调控和评价。 负责组织幼儿园的教研工作,定期进行教改实验及教学观摩;不断提高教学水平及工作质量。 https://www.yjbys.com/hr/gangwei/3976884.html
15.“权限”英文翻译“权限”英语怎么说写英语字典:权(quán,)限(xian,) “ 权限 ”的英语翻译 词典解释 quan xian 1.limits of authority; jurisdiction within certain limits “ 权限 ”的其它翻译 词典解释 (1)[中文词典] (2)[韩语词典] (3)[日语词典] (4)[俄语词典] (5)[德语词典] https://tran.httpcn.com/Html/ChinesetoEnglish/45/KOTBAZPWRNAZILILMERNXV.html
16.申请权限的英语翻译成英语申请权限相关的英语/英文短语 网络接入申请表(使用由IT部门的网络访问权限,改变为雇员)的英语短语 参考资料: 1.百度翻译:申请权限 2.有道翻译:申请权限获赞35次 声明:内容版权归作者所有,未经授权不得任意转载 本文标题和链接: 申请权限的英语-翻译成英语 https://yingyu.xiediantong.com/en/df53bc14f7daf177https://yingyu.xiediantong.com/en/df53bc14f7daf177/
17.幼儿园工作室管理规章制度(通用11篇)二、请假的程序和批准权限 (一)教职工必须严格履行请假手续。请假须有请假条,写明请假事由和请假时间,并经幼儿园有关领导批准签字,报办公室备案后方可离岗。事假和临时病假及特假由本人与本班老师协调,做好班级的工作安排。所有请假必须提前办理请假手续方可离岗,如遇急病或其他特殊情况未能提前请假的应在恢复行为能https://www.fwsir.com/fanwen/html/fanwen_20220521081248_1803829.html
18.权限用英语怎么说权限用英语怎么说 ? 想必大家在学习翻译的过程中都遇到过这样的问题:如何准确地表达“权限”这个概念?或许有些同学会说,直接用英文“permission”就可以了。然而,在翻译行业中,权限这一概念并不仅仅局限于“permission”,还涉及到许多相关的术语和表达方式。那么,究竟应该如何正确地表达权限呢?本文将为大家详细介绍https://www.68jy.net/zixun/mszhishi/193258.html
19.武汉教育云看英文电影,写英文影评,用英文配音 寒假期间,我给学生布置了一项特殊的作业:观看五部英文电影并写出自己的感受。八年级学生词汇量大约在1000左右,基本上可以用英语来表达简单的想法。考虑到同学们英语水平参差不齐的实际情况,我提供了三个问题供同学们发挥: https://www.wuhaneduyun.cn/index.php?r=space/person/blog/view&sid=F259F9A584327692E04010AC73D40970&id=1616224139