普通视图

发现新文章,点击刷新页面。
昨天以前首页
  • ✇辰安博客
  • JSON解析接口套娃 轮询批量解析辰安
    如果有个JSON接口需授权IP或域名使用,那就给它套个娃,然后就可随意调用,也可以自定义返回自己想要的内容,废话不多说,代码如下: 单解析 <?php header("content-type:application/json;charset=utf8"); $url = $_GET['url']; if($_GET['url']==''){ $arr = [ 'code' => 404, 'msg' => '缺少URL', 'from' => $_SERVER['HTTP_HOST'] ]; die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES)); } $Api='我是接口放你自己得'; //JSON接口 $jiexi = $Api.$url; $html = httpget($jiexi); $json = json_decode($html, t
     

JSON解析接口套娃 轮询批量解析

作者 辰安
2024年12月6日 09:03

如果有个JSON接口需授权IP或域名使用,那就给它套个娃,然后就可随意调用,也可以自定义返回自己想要的内容,废话不多说,代码如下:

单解析

<?php

header("content-type:application/json;charset=utf8");

$url = $_GET['url'];
if($_GET['url']==''){
    $arr = [
        'code' => 404,
        'msg' => '缺少URL',
        'from' => $_SERVER['HTTP_HOST']
        ];
    die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));
}

$Api='我是接口放你自己得'; //JSON接口
$jiexi = $Api.$url;
$html = httpget($jiexi);
$json = json_decode($html, true);
$vurl=$json['url'];
if($vurl ==''||$vurl ==null){
    $arr = [
        'code' => 100,
        'msg' => '解析失败',
        'link' => $url,
        'from' => $_SERVER['HTTP_HOST']
        ];
    die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));
}
$arr = [
    'code' => 200,
    'msg' => '解析成功',
    'url' => $vurl,
    'link' => $url,
    'from' => $_SERVER['HTTP_HOST']
    ];
die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));

function httpget($url, $timeout = 10)
{
    $ch = curl_init();                                                      //初始化 curl
    curl_setopt($ch, CURLOPT_URL, $url);                                    //要访问网页 URL 地址
    curl_setopt($ch, CURLOPT_NOBODY, false);                                //设定是否输出页面内容
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                         //返回字符串,而非直接输出到屏幕上
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, false);                        //连接超时时间,设置为 0,则无限等待
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);                            //数据传输的最大允许时间超时,设为一小时
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);                       //HTTP验证方法
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);                        //不检查 SSL 证书来源
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);                        //不检查 证书中 SSL 加密算法是否存在
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                         //跟踪爬取重定向页面
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);                            //当Location:重定向时,自动设置header中的Referer:信息
    curl_setopt($ch, CURLOPT_ENCODING, '');                                 //解决网页乱码问题
    curl_setopt($ch, CURLOPT_REFERER, $_SERVER['HTTP_REFERER']);
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    
    $httpheaders = array();
    $httpheaders[] = "CLIENT-IP: {$_SERVER['HTTP_CLIENT_IP']}";
    $httpheaders[] = "X-FORWARDED-FOR: {$_SERVER['HTTP_X_FORWARDED_FOR']}";
    curl_setopt($ch, CURLOPT_HTTPHEADER, $httpheaders);
    
    $data = curl_exec($ch);                                                 //运行 curl,请求网页并返回结果
    curl_close($ch);                                                        //关闭 curl
    return $data;
}

?>

多接口

<?php

//JSON格式化
header("content-type:application/json;charset=utf8");

//当URL为空时返回内容
$url = $_GET['url'];
if($_GET['url'] == '') {
    $arr = [
        'code' => 404,
        'msg' => '缺少URL!',
        'from' => $_SERVER['HTTP_HOST']
        ];
    die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));
}

$json1 = ''; //接口1

$json2 = ''; //接口2

$json3 = ''; //接口3

$json4 = ''; //接口4

$json5 = ''; //接口5

//接口轮询
$jiexi = $json1.$url;
$html = httpget($jiexi);
$data = json_decode($html, true);
if ($data['url'] == '' || $data['url'] == null) {
    $jiexi = $json2.$url;
    $html = httpget($jiexi);
    $data = json_decode($html, true);
}
if ($data['url'] == '' || $data['url'] == null) {
    $jiexi = $json3.$url;
    $html = httpget($jiexi);
    $data = json_decode($html, true);
}
if ($data['url'] == '' || $data['url'] == null) {
    $jiexi = $json4.$url;
    $html = httpget($jiexi);
    $data = json_decode($html, true);
}
if ($data['url'] == '' || $data['url'] == null) {
    $jiexi = $json5.$url;
    $html = httpget($jiexi);
    $data = json_decode($html, true);
}
if ($data['url'] == '' || $data['url'] == null) {
    $arr = [
        'code' => 100,
        'msg' => '解析失败',
        'link' => $url,
        'from' => $_SERVER['HTTP_HOST']
        ];
    die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));
}

$arr = [
    'code' => 200,
    'msg' => '解析成功',
    'url' => $data['url'],
    'link' => $url,
    'from' => $_SERVER['HTTP_HOST']
    ];
die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));

function httpget($url, $timeout = 5)
{
    $ch = curl_init();                                                      //初始化 curl
    curl_setopt($ch, CURLOPT_URL, $url);                                    //要访问网页 URL 地址
    curl_setopt($ch, CURLOPT_NOBODY, false);                                //设定是否输出页面内容
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                         //返回字符串,而非直接输出到屏幕上
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, false);                        //连接超时时间,设置为 0,则无限等待
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);                            //数据传输的最大允许时间超时,设为一小时
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);                       //HTTP验证方法
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);                        //不检查 SSL 证书来源
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);                        //不检查 证书中 SSL 加密算法是否存在
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                         //跟踪爬取重定向页面
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);                            //当Location:重定向时,自动设置header中的Referer:信息
    curl_setopt($ch, CURLOPT_ENCODING, '');                                 //解决网页乱码问题
    curl_setopt($ch, CURLOPT_REFERER, $_SERVER['HTTP_REFERER']);
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    
    $httpheaders = array();
    $httpheaders[] = "CLIENT-IP: {$_SERVER['HTTP_CLIENT_IP']}";
    $httpheaders[] = "X-FORWARDED-FOR: {$_SERVER['HTTP_X_FORWARDED_FOR']}";
    curl_setopt($ch, CURLOPT_HTTPHEADER, $httpheaders);
    
    $data = curl_exec($ch);                                                 //运行 curl,请求网页并返回结果
    curl_close($ch);                                                        //关闭 curl
    return $data;
}

?>

while循环:

<?php

//JSON格式化
header("content-type:application/json;charset=utf8");

//当URL为空时返回内容
$url = $_GET['url'];
if($_GET['url'] == '') {
    $arr = [
        'code' => 404,
        'msg' => '缺少URL!',
        'from' => $_SERVER['HTTP_HOST']
        ];
    die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));
}

$json = array(
    '',
    '',
    '',
    '',
    '',
    ); //接口

//接口轮询
$num = 0;
$jiexi = $json[$num].$url;
$html = httpget($jiexi);
$data = json_decode($html, true);

while ($data['url'] == '' || $data['url'] == null) {
    $jiexi = $json[$num+1].$url;
    $html = httpget($jiexi);
    $data = json_decode($html, true);
    $num = $num + 1;
    if ($num >= count($json)) {
        break;
    }
}

if ($data['url'] == '' || $data['url'] == null) {
    $arr = [
        'code' => 100,
        'msg' => '解析失败',
        'link' => $url,
        'from' => $_SERVER['HTTP_HOST']
        ];
    die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));
}
else {
    $arr = [
        'code' => 200,
        'msg' => '解析成功',
        'url' => $data['url'],
        'link' => $url,
        'from' => $_SERVER['HTTP_HOST']
        ];
    die(json_encode($arr, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES));
}

function httpget($url, $timeout = 3)
{
    $ch = curl_init();                                                      //初始化 curl
    curl_setopt($ch, CURLOPT_URL, $url);                                    //要访问网页 URL 地址
    curl_setopt($ch, CURLOPT_NOBODY, false);                                //设定是否输出页面内容
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);                         //返回字符串,而非直接输出到屏幕上
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, false);                        //连接超时时间,设置为 0,则无限等待
    curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);                            //数据传输的最大允许时间超时,设为一小时
    curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_ANY);                       //HTTP验证方法
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);                        //不检查 SSL 证书来源
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);                        //不检查 证书中 SSL 加密算法是否存在
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);                         //跟踪爬取重定向页面
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);                            //当Location:重定向时,自动设置header中的Referer:信息
    curl_setopt($ch, CURLOPT_ENCODING, '');                                 //解决网页乱码问题
    curl_setopt($ch, CURLOPT_REFERER, $_SERVER['HTTP_REFERER']);
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    
    $httpheaders = array();
    $httpheaders[] = "CLIENT-IP: {$_SERVER['HTTP_CLIENT_IP']}";
    $httpheaders[] = "X-FORWARDED-FOR: {$_SERVER['HTTP_X_FORWARDED_FOR']}";
    curl_setopt($ch, CURLOPT_HTTPHEADER, $httpheaders);
    
    $data = curl_exec($ch);                                                 //运行 curl,请求网页并返回结果
    curl_close($ch);                                                        //关闭 curl
    return $data;
}

?>

 

  • ✇辰安博客
  • 解决WordPress上传ICO文件失败的技巧与建议辰安
    最近在设置WordPress网站的favicon.ico时,遇到了一个问题:WordPress默认不允许上传.ico格式的文件。常见的错误提示包括:“xxxx.ico上传失败。抱歉,您无权上传此文件类型”以及“抱歉,由于安全原因,这个文件类型不受支持”。这个问题让我感到非常恼火。 尽管我尝试了多种方法,甚至包括修改functions.php文件,但都没有成功。最终,我决定采用一种更加简单和有效的方式——使用插件。这种方法特别适合小白。希望这个小技巧能帮助到遇到类似问题的朋友们。 我本人推荐直接使用开源插件 Enable SVG, WebP & ICO Upload   – WordPress 插件 | WordPress.org China 简体中文 在插件库里直接检索到,目前尝试很多种方法,这个插件最直接有效; 启用 SVG、WebP 和 ICO 上传可以直接从您的网站安装。 登录到您网站的仪表板,即 /wp-admin 然后转到插件→添加新插件 搜索启用 “Enable SVG, WebP & ICO Upload” 找到插件“Enable SVG, W
     

解决WordPress上传ICO文件失败的技巧与建议

作者 辰安
2024年10月12日 15:13

最近在设置WordPress网站的favicon.ico时,遇到了一个问题:WordPress默认不允许上传.ico格式的文件。常见的错误提示包括:“xxxx.ico上传失败。抱歉,您无权上传此文件类型”以及“抱歉,由于安全原因,这个文件类型不受支持”。这个问题让我感到非常恼火。

尽管我尝试了多种方法,甚至包括修改functions.php文件,但都没有成功。最终,我决定采用一种更加简单和有效的方式——使用插件。这种方法特别适合小白。希望这个小技巧能帮助到遇到类似问题的朋友们。

我本人推荐直接使用开源插件

Enable SVG, WebP & ICO Upload   – WordPress 插件 | WordPress.org China 简体中文

在插件库里直接检索到,目前尝试很多种方法,这个插件最直接有效;

87e8d0aebb66aa9f3e1510451efa3066

启用 SVG、WebP 和 ICO 上传可以直接从您的网站安装。

  1. 登录到您网站的仪表板,即 /wp-admin
  2. 然后转到插件→添加新插件
  3. 搜索启用 “Enable SVG, WebP & ICO Upload”
  4. 找到插件“Enable SVG, WebP & ICO Upload”并单击“立即安装”
  5. 激活插件 → 导航至“设置”

设置很简单,三处开关按钮,分别针对SVG、WEBP、ICO三种格式的文件,根据自己需要去开启即可

现在,就可以正常上传ico文件,并且可以在媒体库中查看,已上传的ico文件!

The post 解决WordPress上传ICO文件失败的技巧与建议 appeared first on 辰安博客.

❌
❌