首页 > 电脑专区 > CMS教程 > WordPress >

WordPress riprov2实现演示地址外链加密和伪静态跳转代码

来源:互联网 2023-03-14 23:14:53 380

在阅读了一篇关于WORDPRESS网站外链转内链的优化代码的博客后,自己也去折腾了下riprov2演示地址的外链Base64 加密转内链跳转 ,因此今天特意跟大家分享下。Aat办公区 - 实用经验教程分享!

外链转内链地址Base64加密地址的详细步骤

1、将以下跳转代码保存为 index.php,然后在网站根目录新建一个 go 文件夹,并把 index.php 上传到 go 文件夹中:Aat办公区 - 实用经验教程分享!

?php if(strlen($_SERVER['REQUEST_URI']) > 255 || strpos($_SERVER['REQUEST_URI'], "eval(") || strpos($_SERVER['REQUEST_URI'], "base64")) { @header("HTTP/1.1 414 Request-URI Too Long"); @header("Status: 414 Request-URI Too Long"); @header("Connection: Close"); @exit; } //通过 QUERY_STRING 取得完整的传入数据,然后取得 url=之后的所有值,兼容性更好 $t_url = preg_replace('/^url=(.*)$/i','$1',$_SERVER["QUERY_STRING"]); //此处可以自定义一些特别的外链,不需要可以删除以下 5 行 if($t_url=="febdays" ) { $t_url="https://www.zhann.cn"; } elseif($t_url=="news") { $t_url="https://www.zhann.cn/news"; } //数据处理 if(!empty($t_url)) { //判断取值是否加密 if ($t_url == base64_encode(base64_decode($t_url))) { $t_url = base64_decode($t_url); } //对取值进行网址校验和判断 preg_match('/^(http|https|thunder|qqdl|ed2k|Flashget|qbrowser):\/\//i',$t_url,$matches); if($matches){ $url=$t_url; $title='页面加载中,请稍候...'; } else { preg_match('/\./i',$t_url,$matche); if($matche){ $url=''.$t_url; $title='页面加载中,请稍候...'; } else { $url = 'http://'.$_SERVER['HTTP_HOST']; $title='参数错误,正在返回首页...'; } } } else { $title = '参数缺失,正在返回首页...'; $url = 'http://'.$_SERVER['HTTP_HOST']; } ?> HTML> head> meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> meta name="robots" content="noindex, nofollow" /> noscript>meta http-equiv="refresh" content="1;url='?php echo $url;?>';">/noscript> script> function link_jump() { //禁止其他网站使用我们的跳转页面 var MyHOST = new RegExp("?php echo $_SERVER['HTTP_HOST']; ?>"); if (!MyHOST.test(document.referrer)) { location.href="http://" MyHOST; } location.href="?php echo $url;?>"; } //延时 1S 跳转,可自行修改延时时间 setTimeout(link_jump, 1000); //延时 50S 关闭跳转页面,用于文件下载后不会关闭跳转页的问题 setTimeout(function(){window.opener=null;window.close();}, 50000); /script> title>?php echo $title;?>/title> style type="text/css"> body{background:#555}.loading{-webkit-animation:fadein 2s;-moz-animation:fadein 2s;-o-animation:fadein 2s;animation:fadein 2s}@-moz-keyframes fadein{from{opacity:0}to{opacity:1}}@-webkit-keyframes fadein{from{opacity:0}to{opacity:1}}@-o-keyframes fadein{from{opacity:0}to{opacity:1}}@keyframes fadein{from{opacity:0}to{opacity:1}}.spinner-wrapper{position:absolute;top:0;left:0;z-index:300;height:100%;min-width:100%;min-height:100%;background:rgba(255,255,255,0.93)}.spinner-text{position:absolute;top:45%;left:50%;margin-left:-100px;margin-top:2px;color:#000;letter-spacing:1px;font-size:20px;font-family:Arial}.spinner{position:absolute;top:45%;left:50%;display:block;margin-left:-160px;width:1px;height:1px;border:20px solid rgba(255,0,0,1);-webkit-border-radius:50px;-moz-border-radius:50px;border-radius:50px;border-left-color:transparent;border-right-color:transparent;-webkit-animation:spin 1.5s infinite;-moz-animation:spin 1.5s infinite;animation:spin 1.5s infinite}@-webkit-keyframes spin{0%,100%{-webkit-transform:rotate(0deg) scale(1)}50%{-webkit-transform:rotate(720deg) scale(0.6)}}@-moz-keyframes spin{0%,100%{-moz-transform:rotate(0deg) scale(1)}50%{-moz-transform:rotate(720deg) scale(0.6)}}@-o-keyframes spin{0%,100%{-o-transform:rotate(0deg) scale(1)}50%{-o-transform:rotate(720deg) scale(0.6)}}@keyframes spin{0%,100%{transform:rotate(0deg) scale(1)}50%{transform:rotate(720deg) scale(0.6)}} /style> /head> body> div > div > span >页面加载中,请稍候.../span> span >/span> /div> /div> /body> /html>

其中第12行代码中自定义的一些特别外链,这个功能特别好,因为我们每个站点都或多或少有一些特殊的外链,如果也变成 Base64 加密地址就不好看了,所以此处我们可以多添加几个比较有个性化的外链跳转地址。Aat办公区 - 实用经验教程分享!

2、将以下代码添加到我们的 Nginx 服务器相应配置文件中的 location / { 前面,保存配置文件后平滑重启 Nginx 即可:Aat办公区 - 实用经验教程分享!

rewrite ^/goto/(.*)$ /go/?url=$1 last;

Apache服务器修改根目录.htaccess文件,添加以下代码Aat办公区 - 实用经验教程分享!

RewriteRule ^goto/(.*)$ /go.php?url=$1 [L]

3、替换文章原外链跳转地址格式变更为新的外链格式(/goto/ base64 加密串),我自己的目录为/wp-content/themes/ripro-v2/single/single-cat-store.php 114行,请根据自己的需求来。Aat办公区 - 实用经验教程分享!

?phpglobal $post, $current_user; $user_id = $current_user->ID; //用户ID $post_id = $post->ID; //文章ID $click_nonce = wp_create_nonce('rizhuti_click_' . $post_id);$cao_info1 = get_post_meta($post_id, 'cao_info', true); if ($cao_demourl = get_post_meta($post_id, 'cao_demourl', true)) { $cao_info1[] = array('title' => esc_html__('downurl', 'ripro-v2'), 'desc' => $cao_demourl); } if ($cao_info1) { foreach ($cao_info1 as $key => $value) { if($value['title']=='downurl'){ echo 'a href="/goto/'.base64_encode($value['desc']).'" target="_blank" rel="nofollow">i >/i>演示地址span>若无法打开演示,请联系我们!/span>/a>a href="https://wpa.qq.com/msgrd?v=3&uin=4084380&site=qq&menu=yes" target="_blank" rel="nofollow">i >/i>技术支持span>遇到问题?请联系客服反馈!/span>/a>'; } } }?>

至此,演示地址外链均变成新的跳转格式了。Aat办公区 - 实用经验教程分享!

Aat办公区 - 实用经验教程分享!

Aat办公区 - 实用经验教程分享!

以上方法由办公区教程网编辑摘抄整理自互联网仅供大家参考!Aat办公区 - 实用经验教程分享!


标签: base64加密WORDPRESS知识社区

办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码