Giter Club home page Giter Club logo

biliroaming-php-server's Issues

关于新版的随机调用

// 自定义API,避免集中请求,降低风控几率
$hk_api = array('host1','host2','host3'); // 随机调用HK,可以自定义其他反代api,例如云函数、CFW,请自行修改 host13 的內容,启用要注释上方默认api
$tw_api = array('host1','host2','host3'); // 随机调用TW,可以自定义其他反代api,例如云函数、CFW,请自行修改 host1
3 的內容,启用要注释上方默认api
if (CUSTOM_HOST_HK == "CUSTOM_HOST_HK") {
define('CUSTOM_HOST_HK', $hk_api[array_rand($hk_api)]); // 随机调用HK
}
if (CUSTOM_HOST_TW == "CUSTOM_HOST_TW") {
define('CUSTOM_HOST_TW', $tw_api[array_rand($tw_api)]); // 随机调用TW
}

如果注释掉上方的默认API则下面的if判断会丢失掉赋值
所以要怎么搞?

考虑适配在阿里云云函数/腾讯云云函数/华为云函数工作流等云函数上运行吗

如题. 这样服务器可靠性大大提高, 而且成本也比购买服务器低. 自建难度也大大降低.
我不会php, 所以问一下. 或者等暑假有空了我自己写一个python或者nodejs版本的.
不过已知数据库的问题有点难解决, 云函数不允许写数据到本地, 数据存储的问题我在移植FODI项目的时候是通过API连接到Cloudflare Worker KV曲线解决的

sql 访问失败

当启用缓存时会因无法访问数据库而解析失败

以下是由 nginx 托管的报错信息

2024/04/20 18:58:46 [error] 105474#105474: *2240 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Uncaught Error: Call to a member function query() on string in /opt/BiliRoaming-PHP-Server/utils/functio
ns_cache.php:67
Stack trace:
#0 /opt/BiliRoaming-PHP-Server/utils/auth.php(8): get_userinfo_fromsql()
#1 /opt/BiliRoaming-PHP-Server/intl/gateway/v2/ogv/playurl/index.php(21): include('/opt/BiliRoamin...')
#2 {main}

能否支持使用season_id自动获取epidlist自动封禁旗下相关视频

可采用https://api.bilibili.com/pgc/web/season/section?season_id=

例如
season_id:45838 为天宫赐福第二季
可直接找到相关的正片和PV等

https://www.bilibili.com/bangumi/media/md20340706/中的作品详情中的正片和PV花絮
为了避免格式问题,找到间谍过家家为例
https://www.bilibili.com/bangumi/media/md28237178
进行比对,可见依旧完结的番剧中格式也没有明显变化,即为固定格式
如何查找season_id?
可在https://www.bilibili.com/bangumi/media/md28237178中使用F12中的网络项
查询https://api.bilibili.com/pgc/web/season即可找到
https://api.bilibili.com/pgc/web/season?season_id=xxxxxx

function getEpidList($url) {
    // 获取JSON数据
    $jsonData = file_get_contents($url);
    // 将JSON数据解码为关联数组
    $data = json_decode($jsonData, true);
    // 如果 json中的code为-404 则返回null
    if ($data['code'] == -404) {
        return null;
    }
    if ($data !== null) {
        $epids = array();
        // 处理主要节目即正片(main_section)的剧集
        foreach ($data['result']['main_section']['episodes'] as $episode) {
            $share_url = $episode['share_url'];
            // 使用正则表达式从分享链接中提取EPID
            if (preg_match('/ep(\d+)/', $share_url, $matches)) {
                $epid = $matches[1];
                $epids[] = $epid;
            }
        }
        // 处理其他节目部分即PV或者其他
        foreach ($data['result']['section'] as $section) {
            foreach ($section['episodes'] as $episode) {
                $share_url = $episode['share_url'];
                // 使用正则表达式从分享链接中提取EPID
                if (preg_match('/ep(\d+)/', $share_url, $matches)) {
                    $epid = $matches[1];
                    $epids[] = $epid;
                }
            }
        }
        return $epids;
    } else {
        return null;
    }
}
$url = 'https://api.bilibili.com/pgc/web/season/section?season_id=' . $season_id;
$epid_list = getEpidList($url);

9721b8f 版本一直返回 -20 ERROR

直接 Git clone 之后,目前版本 会一直返回 -20 ERROR 访问密钥缺失。
当我回退到 该版本 时,正常使用没有问题。
中间版本因时间关系未能逐一验证,望作者能抽空修复。如果作者无法复现或需要日志,可以留下邮箱,我提供目前正在使用的机器供您操作。

服务器不可用

腾讯云的香港服务器,centos7.9版本,宝塔,网站搭建成功,采用本地白名单模式,但是哔哩漫游仍然提示服务器不可用
Screenshot_20231019_065651_com huawei browser_edit_26887793258397
Screenshot_20231019_065742_tv danmaku bili_edit_26930826502661

An error in afea6b9 version

拉取了最新的版本 (afea6b9) 部署在服务器的宝塔面板上,已配置防重复 301 转址
Web 端油猴脚本和 App 端哔哩漫游都填好了服务器的域名
App 端打开番剧一切正常,Web 端首次打开番剧会弹出一大串东西,必须多刷新一次才能看
不确定是油猴脚本的问题还是程序的问题
image
如果去掉防重复 301 转址后直接不能看了
image
服务器环境:
Ubuntu 20.04.5
Nginx 1.23.2
MySQL 5.7.40
PHP 8.2.0
程序配置:
(和拉取的 config.php 不同的地方)
BLOCK_TYPE = local_whitelist
NEED_LOGIN = 1
BILIROAMING = 0
WEB_ON = 1
SAVE_CACHE = 1
SAVE_LOG = 1

关于如何正确食用软件简易教程

Linux (debian 11)如何通过docker部署漫游
无脑直接复制粘贴

curl -fsSL https://get.docker.com | bash -s docker

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

sudo chmod +x /usr/local/bin/docker-compose

docker run -d --name web -p 8080:80 -v /root/php:/var/www/html php:7.2-apache

cd /root/php

unzip Server_v4.5.3.zip

至此你应该可以用。 ip:8080。 ip加端口的方式访问

给你的ip解析一个域名。比如xxx.xxx.com

继续
通过这个链接里的教程
https://blog.xiaoz.org/archives/18963
开启代理 以及申请ssl证书。自此应该就没问题

最近出现的大会员限制问题

Web 端问题,App 端正常
油猴脚本版本 8.4.3
测试两个账号都拥有大会员
在观看需要大会员的番剧时,会提示 {"code":-10403,"message":"大会员专享限制"}
但是在观看非会员的番剧时,能够正常选择大会员的清晰度

自建服务器
Ubuntu 22.04.2
Nginx 1.24.0
MySQL 5.7.42
PHP 8.2.8
服务器为白名单模式
e98ded45d41913a9cd1e88d28d09e4a5

在出现问题的当天测试 哔哩.plus 服务器(Go)也有相同问题,当天晚上就能拉取了,问该服务器作者说并不清楚 php 端的缓存

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.