首页
wjlink
投稿
视频
直播
壁纸
更多
留言
统计
LINK
Search
1
宝塔面板绑定域名套上cloudflare – 实现cdn访问拯救你的IP
110 阅读
2
Python 爬取YouTube某个频道下的所有视频信息
110 阅读
3
为你的 WordPress 站点配置 Telegram Instant View
63 阅读
4
苹果CMS(MACCMS)如何在标题中随机插入关键词
60 阅读
5
windows 使用 FFmpeg 按大小或时间来批量分割视频
59 阅读
技術類
自媒体
調查
问卷调查
美國站
英國站
注册丨登录
Search
标签搜索
wordpress
V2Ray
vps
苹果cms
面板
php
宝塔
ipfs
DD
脚本
语言
上传
判断
Youtube
cdn
ip
AI
HTML
1
2
Gengre
累计撰写
67
篇文章
累计收到
0
条评论
今日撰写
0
篇文章
️
首页
分类
技術類
自媒体
調查
问卷调查
美國站
英國站
页面
wjlink
投稿
视频
直播
壁纸
留言
统计
LINK
登录丨注册
搜索到
67
篇与
的结果
2023-10-21
Linux脚本iptables屏蔽指定国家或海外IP恶意访问网站的详细方法
前言:对于网站站长来说,经常遇到海外ip恶意抓取或恶意CC攻击的情况,对于这种问题,很是头痛,之前本站也有一篇教程介绍在Linux系统下使用SH脚本如何屏蔽海外ip的详细方法,虽然可以屏蔽,但功能不强大,本次在网上找到了一篇非常使用的教程,可以屏蔽指定国家的ip访问服务器,现在转载过来,希望对大家有帮助本教程相关阅读:1、Linux系统屏蔽国外(海外)IP解决被CC攻击的方法:https://blog.tag.gg/showinfo-3-36155-0.html2、被CC攻击了怎么办?Linux系统使用shell脚本自动屏蔽简单解决CC攻击方法:https://blog.tag.gg/showinfo-3-36156-0.html 功能:屏蔽指定国家地区的IP访问方法一:使用大神的开源脚本,屏蔽指定国家地区的IP访问执行如下命令下载脚本并执行 wget https://blog.tag.gg/soft/block-ips.shsh block-ips.sh 执行效果如图封禁ip时会要求你输入国家代码,国家代码以及国家对应的ip段可查看:点击进入。记住所填参数均为小写字母。比如JAPAN (JP),我们就输入jp这个参数 方法二:使用IPIP的数据库进行流量屏蔽(推荐,目前已支持centos6和7还有ubuntu系统)1、创建一个shell脚本文件例如block_ip.sh,并写入如下代码保存 #!/bin/bash#判断是否具有root权限root_need() { if [[ $EUID -ne 0 ]]; then echo “Error:This script must be run as root!” 1>&2 exit 1 fi}#检查系统分支及版本(主要是:分支->>版本>>决定命令格式)check_release() { if uname -a | grep el7 ; then release=”centos7″ elif uname -a | grep el6 ; then release=”centos6″ yum install ipset -y elif cat /etc/issue |grep -i ubuntu ; then release=”ubuntu” apt install ipset -y fi}#安装必要的软件(wget),并下载中国IP网段文件(最后将局域网地址也放进去)get_china_ip() { #安装必要的软件(wget) rpm –help >/dev/null 2>&1 && rpm -qa |grep wget >/dev/null 2>&1 ||yum install -y wget ipset >/dev/null 2>&1 dpkg –help >/dev/null 2>&1 && dpkg -l |grep wget >/dev/null 2>&1 ||apt-get install wget ipset -y >/dev/null 2>&1 #该文件由IPIP维护更新,大约一月一次更新(也可以用我放在国内的存储的版本,2018-9-8日版) [ -f china_ip_list.txt ] && mv china_ip_list.txt china_ip_list.txt.old wget https://github.com/17mon/china_ip_list/blob/master/china_ip_list.txt cat china_ip_list.txt |grep ‘js-file-line”>’ |awk -F’js-file-line”>’ ‘{print $2}’ |awk -F'< ‘ ‘{print $1}’ >> china_ip.txt rm -rf china_ip_list.txt #wget https://qiniu.wsfnk.com/china_ip.txt #放行局域网地址 echo “192.168.0.0/18” >> china_ip.txt echo “10.0.0.0/8” >> china_ip.txt echo “172.16.0.0/12” >> china_ip.txt}#只允许国内IP访问ipset_only_china() { echo “ipset create whitelist-china hash:net hashsize 10000 maxelem 1000000” > /etc/ip-black.sh for i in $( cat china_ip.txt ) do echo “ipset add whitelist-china $i” >> /etc/ip-black.sh done echo “iptables -I INPUT -m set –match-set whitelist-china src -j ACCEPT” >> /etc/ip-black.sh #拒绝非国内和内网地址发起的tcp连接请求(tcp syn 包)(注意,只是屏蔽了入向的tcp syn包,该主机主动访问国外资源不用影响) echo “iptables -A INPUT -p tcp –syn -m connlimit –connlimit-above 0 -j DROP” >> /etc/ip-black.sh #拒绝非国内和内网发起的ping探测(不影响本机ping外部主机) echo “iptables -A INPUT -p icmp -m icmp –icmp-type 8 -j DROP” >> /etc/ip-black.sh #echo “iptables -A INPUT -j DROP” >> /etc/ip-black.sh rm -rf china_ip.txt}run_setup() { chmod +x /etc/rc.local sh /etc/ip-black.sh rm -rf /etc/ip-black.sh #下面这句主要是兼容centos6不能使用”-f”参数 ipset save whitelist-china -f /etc/ipset.conf || ipset save whitelist-china > /etc/ipset.conf [ $release = centos7 ] && echo “ipset restore -f /etc/ipset.conf” >> /etc/rc.local [ $release = centos6 ] && echo “ipset restore < /etc/ipset.conf” >> /etc/rc.local echo “iptables -I INPUT -m set –match-set whitelist-china src -j ACCEPT” >> /etc/rc.local echo “iptables -A INPUT -p tcp –syn -m connlimit –connlimit-above 0 -j DROP” >> /etc/rc.local echo “iptables -A INPUT -p icmp -m icmp –icmp-type 8 -j DROP” >> /etc/rc.local #echo “iptables -A INPUT -j DROP” >> /etc/rc.local}main() { check_release get_china_ip ipset_only_chinacase “$release” incentos6) run_setup ;;centos7) chmod +x /etc/rc.d/rc.local run_setup ;;ubuntu) sed -i ‘/exit 0/d’ /etc/rc.local run_setup echo “exit 0” >> /etc/rc.local ;;esac}main 2、输入命令 block_ip.sh 执行脚本即可。希望对大家有帮助
2023年10月21日
9 阅读
0 评论
0 点赞
2023-10-21
Paypal外区账户/国际版绑大陆手机号注册教程
首先,需要明确的:我们注册Paypal一般是不考虑国区的,也就是贝宝。虽然注册简单,但是在对外使用上限制太多,很不方便。注册外区账户,也就是俗称的国际板。常见的有:港区,美区,台区、日区、新区等等,大体上区别也就2点:1、有些区是有消费税之类的,这点可以在Paypal官网上去看;2、不同区有时候会推出一些不同的活动,比如代金券之类的。如果我们直接到对应区官网注册,会要求必须输入当地手机号并进行验证,而且后期也是没有办法换绑为自己国内手机号的。这一步会难住很多人!一些人虽然能找到接码,可是对账户安全影响很大,毕竟接码的手机号不是自己可控的。这也就是本文所讲的重点:如何用大陆手机号注册Paypal外区账户。注册准备1、干净的IP:没有注册、登陆过已有账户或是被风控账户的IP。本地IP即可,有对应区域的自用IP更好2、干净的浏览器:将浏览器的cookie清空,并开启隐私模式。推荐:Chrome、Firefox、Edge,不建议使用国内浏览器。如果有指纹浏览器更好3、注册使用的邮箱:尽量不要用国内邮箱4、虚假信用卡信息生成:https://www.creditcardvalidator.org/generator5、一张外币信用卡:国内行的卡就行。如果没有的话,也可以暂时不要。但后面要使用时肯定是需要的开始注册1、找一些国外有PayPal支付方式的网站,随便下单,进入到结算页,选择Paypal支付(PP账户注册成功后,付款是要二次确认的,所以不用担心被扣款的情况)。这里博主使用的是阿里云国际,注册完阿里云国际账户后,进入 控制台 — 费用 — 支付方式管理 — Paypal ,点击 绑定 。一般都会跳出一个小窗口页面,进入到Paypal。选择【创建账户】注意:有的Paypal显示的不是创建账户,而是“用信用卡或者借记卡绑定支付”之类,这里选择是一样的。2、跳转到注册信息填写页面,填写要点如下: 国家或地区:这里的选择就决定了你账户属于哪个区域。你如果用的是本地IP,这里就需要手动选择你所想注册的地区;如果是用当地IP,这里就默认会检测出所在地区 信用卡信息:这里卡号信息可以暂填一个假的即可(即便是假的也不能胡编,在虚假信用卡信息生成网站中生成一个填到这),因为不管卡号真假在这都是绑不上的。后面有需要时可以再绑真实的。账单地址就自己在 Goole Maps 中找一个当地地址填入 联系资料中的手机号码:选择 中国+86,填入你的大陆手机号 个人信息:出生国家、国籍都选“中国”,ID信息建议填真实的。后面万一出现风控、纠纷,能够提供有效资料来维护自己权益。除非是你准备只用一次 3、点击【同意并继续】后,一般会跳转到一个绑卡页面(有的也没有这个页面),这个时候直接退出不用绑卡。至此,你的Paypal账户就已经注册完成了!注意事项1、新账户注册成功后,不建议立即验证手机号、绑卡。先放置3-7天,首轮风控期过后再验证手机号,绑卡;2、绑卡后建议先选择个福利项目,进行一个小额捐赠。然后同样再放置一周左右。之后就正常使用即可;3、使用过程中建议不要频繁跳IP,会引起风控。另外补充一点,如果你想看你的账户属于哪一个区,可以登录Paypal后台,进入钱包里,看币种就知道了。比如,香港Paypal就会显示美元与港币,新加坡Paypal就会显示美元与新加坡元。
2023年10月21日
54 阅读
0 评论
0 点赞
2023-10-21
如何快速搭建自己的 IPFS 网关
什么是 IPFS星际文件系统(InterPlanetary File System,缩写为 IPFS)是一个旨在实现文件的分布式存储、共享和持久话的网络传输协议。它是一个内容可寻址的点对点超媒体分发协议。在IPFS网络中的节点构成一个分布式文件系统。IPFS GatewayIPFS 网关 (gateway) 允许访问者通过 HTTP 请求从 IPFS 网络访问数据。默认情况下,IPFS 网关配置在 8080 端口上,数据将通过以下方式从正在运行 IPFS 的服务器上获取:http://{your_ip_address}:8080/ipfs/{content ID} or https://{gateway URL}/ipfs/{content ID}/{optional path to resource} 关于 IPFS 网关更详细的介绍: https://docs.ipfs.io/concepts/ipfs-gateway/#overview 27官方推荐配置 IPFS 网关教程: This tutorial configuring an IPFS gateway on a Google Cloud platform其他参考链接:Introduction to IPFS: Run Nodes on Your Network, with HTTP Gateways: https://rossbulat.medium.com/introduction-to-ipfs-set-up-nodes-on-your-network-with-http-gateways-10e21ea689a4 10Cloudflare IPFS gateway: Setting up a Server: https://developers.cloudflare.com/distributed-web/ipfs-gateway/setting-up-a-server/ 8在 Linux 服务器上安装 IPFS官方安装教程详见: https://docs.ipfs.io/install/command-line/#official-distributions 15此处以阿里云 ECS 服务器为例,选择 CentOS 8.5 操作系统。 首先点击 “远程连接”,选择 Workbench 远程连接,通过网页远程访问你的 ECS 实例image.jpg2098×616 125 KB 连接服务器之后,可以通过以下两种方式从 dist.ipfs.io 5 安装 IPFS: 1. 手动安装 go-ipfscd ~/ wget https://dist.ipfs.io/go-ipfs/v0.12.2/go-ipfs_v0.12.2_linux-amd64.tar.gz // 阿里云服务器可能无法访问 dist.ipfs.io // 作为替代,可以使用 wget -q https://github.com/ipfs/go-ipfs/releases/download/v0.12.2/go-ipfs_v0.12.2_linux-amd64.tar.gz // 解压文件夹 tar xvfz go-ipfs_v0.4.18_linux-amd64.tar.gz > x go-ipfs/install.sh > x go-ipfs/ipfs > x go-ipfs/LICENSE > x go-ipfs/LICENSE-APACHE > x go-ipfs/LICENSE-MIT > x go-ipfs/README.md // 进入 go-ipfs 文件夹,运行安装脚本 cd go-ipfs sudo ./install.sh > Moved ./ipfs to /usr/local/bin // 测试 ipfs 是否被正确安装 ipfs --version > ipfs version 0.12.2 2. 通过 ipfs-update 安装cd ~/ wget https://dist.ipfs.io/ipfs-update/v1.8.0/ipfs-update_v1.8.0_linux-amd64.tar.gz tar xvfz ipfs-update_v1.5.2_linux-amd64.tar.gz cd ipfs-update sudo ./install.sh ipfs-update versions ipfs-update install latest 运行 ipfs-update install latest 将安装最新版本的 go-ipfs,返回如下:fetching go-ipfs version v0.4.22 binary downloaded, verifying... success! tests all passed. stashing old binary installing new binary to /usr/local/bin/ipfs checking if repo migration is needed... Installation complete! Remember to restart your daemon before continuing 初始化仓库官方初始化与操作教程详见: https://docs.ipfs.io/how-to/command-line-quick-start/#initialize-the-repository 6安装成功后,首先运行 ipfs init 初始化仓库 (repository) 。IPFS 默认将所有设置和内部数据都放在名为 repository 的目录中。返回如下:ipfs init > initializing ipfs node at /Users/jbenet/.ipfs > generating 2048-bit RSA keypair...done > peer identity: Qmcpo2iLBikrdf1d6QU6vXuNb6P7hwrbNPW9kLAH8eG67z > to get started, enter: > > ipfs cat /ipfs/QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG/readme 注意事项: 如果运行 sudo ipfs init,将为 root 用户而不是你的本地用户帐户创建存储库。IPFS 不需要 root 权限,所以最好以普通用户身份运行所有命令!使用 Systemd 来启动 IPFS 守护进程Systemd 是大多数较新的 Linux 发行版附带的套件,允许用户创建和管理后台服务。这些服务在服务器启动时自动启动,如果失败则重新启动,并将其输出日志保存到磁盘。创建以下 systemd 单元文件以在重启期间保持 IPFS 服务器的启动: 输入命令 sudo bash -c 'cat >/lib/systemd/system/ipfs.service
2023年10月21日
2 阅读
0 评论
0 点赞
2023-10-21
WordPress不同分类调用不同模板,不同分类下调用不同文章页模板
PS:在wordpress4.4.2上测试可用使用过帝国CMS和织梦DEDEcms建站的朋友都知道,我们可以为不同的分类列表调用不同的分类列表模板样式,不同分类下的文章使用不同的文章页面样式!这样感觉网站大气有个性,下面我来给大家介绍wordpress主题不同分类显示不同样式模板具体步骤.WordPress不同分类使用不同列表模板样式:方法一:创建独立ID或别名的样式文件WordPress默认的分类是查找对应ID的主题文件,找不到就会指向archive.php文件,如果archive.php文件不存在,就会默认使用index.php文件。到博客后台查看一下要设计样式的分类的ID,假设分类ID为7,之后把主题文件archive.php复制一下,把文件改名为:category- 7.php,这样当你浏览分类ID为7的分类时,就会自动调用category-7.php主题文件,就实现了自定义显示分类为7的样式。上面是根据ID来创建文件,其实也可以通过别名来创建,比如id为7的分类别名为Internet,那么创建一个名为category-Internet.php的文件,效果和category-7.php是一样的。当然了,你创建的category-7.php或category-Internet.php的样式要区别于archive.php哦,要不然,就称不上“不同分类使用不同列表样式”了,呵呵方法二:判断ID调用不同样式的文件:上面的方法比较有局限性,如果要实现多个分类列表调用同一个列表模板样式,就需要创建多个文件,此时我们可以使用is_category 这个函数!首先,我们创建两个以上的不同样式的列表文件,比如这里创建article_list.php(文章列表模板样式)、thumb_list.php(有缩略图的列表模板样式)和image_list.php(图集列表样式),然后创建一个archive.php文件,在archive.php中使用下面的代码实现不同的效果。例如:1)要实现id为5的分类使用的是image_list.php样式,其余的使用article_list.php样式,代码如下:2)要实现id为8、9、10这三个分类都使用thumb_list.php样式,其余的使用article_list.php样式呢?可以通过数组实现,以此类推,具体代码如下:3)要实现id为8、9、10三个分类使用thumb_list.php样式,id为1、2、3的分类使用image_list.php样式,其余使用article_list.php样式,可以使用elseif实现,代码如下:小结:上面两种方法都可以实现WordPress不同分类使用不同列表样式,大家可以根据自己需要来选择,奇芳阁更加倾向于方法二,因为通过数组调用,只要给主题设置后台添加一个填写分类id数组的表单,就可以让主题使用者方便地设置啦。WordPress不同分类下的文章使用不同文章样式:WordPress不同分类下的文章使用不同文章模板样式实现的方法和上面说到的方法二的原理是一样的,只不过使用的函数不是is_category ,而是 in_category 。同样我们要根据需要创建两个以上的文章模板样式,比如single1.php、single2.php和single3.php,然后在single.php通过in_category 判断代码来实现自己需要的效果。比如要实现id为8、9、10三个分类下的文章使用single1.php样式,id为1、2、3的分类下的文章使用single2.php样式,其余使用single3.php样式!首先,复制三个single.php文件分别取名为“single1.php”、“single2.php”和“single3.php”,然后,把原先的single.php文件里面的内容全部删除,并用下面的代码进行替换:好了,基本的思路就是这样,最后的总结只有一句:分类页判断分类用is_category(), 内容页判断分类需用in_category()。
2023年10月21日
6 阅读
0 评论
0 点赞
2023-10-21
转载:闲置vps挂直播赚钱
直播思路我先给大家一点提示:淘宝、拼多多的无人直播相信大家都看过吧,24小时不间断的那种都是循环播放,但是因为直播是有推荐的,直播间在首页被推荐所带来曝光量一定会带来销售额的增长,卖产品就是直播的第一种赚钱思路;第二种赚钱思路是引流,做aff,或是靠广告;第三种做个品牌,精准定位目标客户,目的就是吸引关注然后变现。我上面说的是不是有点模糊,那我来举几个例子来说明一下:1、外贸工厂,把你的产品从设计、制作、运输、装配、使用等等内容制作成视频,加上号召,然后循环在直播平台播放,这相当于有个员工24小时帮你叫卖,也包括在你睡觉的时候!2、依靠联盟平台,搞一些与产品相关的视频进行直播:选择一些你懂得的业务,什么户外、体育、健身、衣食住行所有这些周边产品多了去了。咱比方说“游戏”,有些国外的游戏网站一个CPA价格高达$30,国内也有游戏商给到18元一个注册的,而且游戏视频还很好弄到,我认为入行最简单就是这个。3、做品牌的话,我只能给你几个成功的例子:1放松音乐、2瑜伽教学、3学习陪伴;看看这个:应该是实景拍摄的,清晰的水流声加上舒缓的音乐,这意境真的是陶冶情操啊,视频目前已获得297万的观看,其实它就像广场舞就是一个死循环,不过要是直播一样会有观众来看。小结:首先选择你的目标和方向,做哪种类型的直播;然后选择产品,想好变现思路;构思几个死循环视频;上线赚钱——就这么简单!可用于直播的国外vps推荐:https://iweec.com/64.html实战:如何直播平台选择直播平台么,就这么几个,我把它们按照区域分成两类:一类国内,一类国外。国内比较厉害的:抖音快手B站头条淘宝拼多多;国外的话YouTube、Facebook、TikTok、twitch….国内平台直播都需要实名认证,国外的也有限制,Youtube是要绑定手机号,申请直播功能24小时后才能开通,fb,tt,tw我没有弄,需要大家自行查找教程,反正挺多的。根据内容和受众选择合适的平台和vps服务器!vps最低配置1核1G3M 流量0.5T或以上,推荐1核2G3M 1T,视频码率设置越高越费流量;工具代码和步骤系统推荐centos7,ubuntu18,debian9或以上~一、更新系统centosyam update -y && yam install vim screen -yubuntu debianapt update -y && apt install vim screen -y二、安装ffmpegubuntu debiansudo apt install ffmpegffmpeg -versioncentos在下一步执行 stream.sh后再安装也OK的。三、准备服务器文件1、stream.sh#!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH #=================================================================# # System Required: CentOS7 X86_64 # # Description: FFmpeg Stream Media Server # # Author: LALA # # Website: https://www.lala.im # #=================================================================# # 颜色选择 red='3[0;31m' green='3[0;32m' yellow='3[0;33m' font="3[0m" ffmpeg_install(){ # 安装FFMPEG read -p "你的机器内是否已经安装过FFmpeg4.x?安装FFmpeg才能正常推流,是否现在安装FFmpeg?(yes/no):" Choose if [ $Choose = "yes" ];then yum -y install wget wget --no-check-certificate https://www.johnvansickle.com/ffmpeg/old-releases/ffmpeg-4.0.3-64bit-static.tar.xz tar -xJf ffmpeg-4.0.3-64bit-static.tar.xz cd ffmpeg-4.0.3-64bit-static mv ffmpeg /usr/bin && mv ffprobe /usr/bin && mv qt-faststart /usr/bin && mv ffmpeg-10bit /usr/bin fi if [ $Choose = "no" ] then echo -e "${yellow} 你选择不安装FFmpeg,请确定你的机器内已经自行安装过FFmpeg,否则程序无法正常工作! ${font}" sleep 2 fi } stream_start(){ # 定义推流地址和推流码 read -p "输入你的推流地址和推流码(rtmp协议):" rtmp # 判断用户输入的地址是否合法 if [[ $rtmp =~ "rtmp://" ]];then echo -e "${green} 推流地址输入正确,程序将进行下一步操作. ${font}" sleep 2 else echo -e "${red} 你输入的地址不合法,请重新运行程序并输入! ${font}" exit 1 fi # 定义视频存放目录 read -p "输入你的视频存放目录 (格式仅支持mp4,并且要绝对路径,例如/opt/video):" folder # 判断是否需要添加水印 read -p "是否需要为视频添加水印?水印位置默认在右上方,需要较好CPU支持(yes/no):" watermark if [ $watermark = "yes" ];then read -p "输入你的水印图片存放绝对路径,例如/opt/image/watermark.jpg (格式支持jpg/png/bmp):" image echo -e "${yellow} 添加水印完成,程序将开始推流. ${font}" # 循环 while true do cd $folder for video in $(ls *.mp4) do ffmpeg -re -i "$video" -i "$image" -filter_complex overlay=W-w-5:5 -c:v libx264 -c:a aac -b:a 192k -strict -2 -f flv ${rtmp} done done fi if [ $watermark = "no" ] then echo -e "${yellow} 你选择不添加水印,程序将开始推流. ${font}" # 循环 while true do cd $folder for video in $(ls *.mp4) do ffmpeg -re -i "$video" -c:v copy -c:a aac -b:a 192k -strict -2 -f flv ${rtmp} done done fi } # 停止推流 stream_stop(){ screen -S stream -X quit killall ffmpeg } # 开始菜单设置 echo -e "${yellow} CentOS7 X86_64 FFmpeg无人值守循环推流 For LALA.IM ${font}" echo -e "${red} 请确定此脚本目前是在screen窗口内运行的! ${font}" echo -e "${green} 1.安装FFmpeg (机器要安装FFmpeg才能正常推流) ${font}" echo -e "${green} 2.开始无人值守循环推流 ${font}" echo -e "${green} 3.停止推流 ${font}" start_menu(){ read -p "请输入数字(1-3),选择你要进行的操作:" num case "$num" in 1) ffmpeg_install ;; 2) stream_start ;; 3) stream_stop ;; *) echo -e "${red} 请输入正确的数字 (1-3) ${font}" ;; esac } # 运行开始菜单 start_menu 2、视频文件上传直服务器,我这里仅仅就上传到/root目录了;这里我补充一下,上面的stream.sh中可以实现自动轮播,所以上传多个mp4文件也是可以的。 四、开启直播ssh到服务器,开启新会话:screen -S stream新窗口中执行bash stream.shcentos在此处先选择1,安装ffmpeg;安装过后选择2,开始直播推流!推流地址是:直播网址/直播码这个地址到直播后台找一下,格式类似于:rtmp://xxxxx.xxxxx.xxx/live/xxxx-xxxx视频存放目录,这里写绝对路径,我使用的是 /root是否要水印,我不用,然后回车开始推流!一切正常后,还需要找到推流会话的id,创建新的ssh窗口screen -ls然后远程detachscreen -d id只有一个视频?如果你推流的视频仅有一个,就不用上面这么复杂了,使用命令:ffmpeg -re -i input.mp4 -c:v libx264 -c:a aac -f flv rtmp://your-server-url/app/stream这条命令会从本地的 input.mp4 文件中读取视频数据,然后使用 libx264 编码视频流和 aac 编码音频流,最后使用 RTMP 协议将视频流推送到指定的服务器地址。上面的命令中,-re 参数表示以“实时”模式读取视频数据,这意味着 ffmpeg 会尽量按照视频的原始帧率来读取数据。-i input.mp4 参数指定了输入文件的名称,-c:v libx264 和 -c:a aac 参数分别指定了视频流和音频流使用的编码器。-f flv 参数指定了输出文件的格式,在这里我们使用 FLV 格式。最后,rtmp://your-server-url/app/stream 是推流服务器的地址,你需要将其替换为你自己的服务器地址。资源占用问题服务器直播最大的问题无非就是流量,不过既然是闲置机器,放着也是放着对吧。实测一个1核1GB服务器推流进程大约占20%cpu和40M多一些的内存,那么理论上我们可以用一个vps推流4个直播间。总结利用闲置的vps直播赚钱,这肯定是vps的又一个应用场景,尤其对于手上有闲置服务器的人,这个方法真实可行,做的好完全可以当成工作来做。只要是有好思路和视频素材,上线即可实现盈利。视频教程B站:https://www.bilibili.com/video/BV1PG4y127PV/YouTube:https://www.youtube.com/watch?v=rM6i-_ecUTQ参考资料灵感来源:https://www.youtube.com/watch?v=FY1aoAr2yowhttps://lala.im/4816.htmlhttps://zhuanlan.zhihu.com/p/73984438转载自:闲置vps挂直播赚钱 – 泠次元 (xh07.top)
2023年10月21日
5 阅读
0 评论
0 点赞
2023-10-21
苹果cms10内容获取所有视频链接
苹果cms10内容获取所有视频链接{maccms:foreach name="obj.vod_play_list" id="vo" key="key"}{maccms:foreach name="vo.urls" id="vo2" key="key2"} {$vo.player_info.show}-{$obj.type.type_name}-{$obj.vod_name}-{$vo2.name} {/maccms:foreach}{/maccms:foreach}
2023年10月21日
24 阅读
0 评论
0 点赞
2023-10-21
苹果cms ajax加载数据类似瀑布流效果
苹果cms ajax加载数据类似瀑布流效果 $(function() { $(".open-search").click(function(){ $(".weui-search-bar").show(); $(".weui-search-bar").addClass("weui-search-bar_focusing").find(".weui-search-bar__input").focus(); $(".myui-header").hide(); }); $("#searchCancel").click(function(){ $(".weui-search-bar").removeClass("weui-search-bar_focusing").hide(); $(".myui-header").show(); }); $(".weui-popup__overlay").click(function(){ $(".weui-popup__container").removeClass("weui-popup__container--visible").hide(); }); $(".header-menu").click(function(){ $(".header-menu .down").toggle(); }); $(".list-more").click(function(){ var $that = $(this); $.ajax({ type: "get", url: '{$maccms.path}index.php/ajax/data.html?mid='+$that.attr("data-mid")+'&page='+$that.attr("data-page")+'&limit=10&tid='+$that.attr("data-tid")+'', dataType: "json", success: function(data) { var _str=""; $.each(data.list,function(i,e){ _str+=''+e.vod_name+'类型:'+e.vod_class+'状态:'+e.vod_remarks+'导演:'+e.vod_director+'主演:'+e.vod_actor+'上映:'+e.vod_year+'' }); $('#list').append(_str); } }); $(this).attr("data-page", parseInt($(this).attr("data-page")) + 1); if ($(this).attr("data-page") == '20') { $(this).hide(); $(".weui-btn-area").append("我是有底线的"); } }); }); data-tid=”” 留空则全部显示,{$obj.type_id}为分类id 加载更多
2023年10月21日
10 阅读
0 评论
0 点赞
2023-10-21
宝塔面板绑定域名套上cloudflare – 实现cdn访问拯救你的IP
这里的宝塔面板绑定域名,不是指宝塔面板里面的网站而是单纯的宝塔后台面板的访问。宝塔面板的访问一般是服务器ip:端口号这样访问,但是不排除你的IP被那啥了之后访问不了的情况。突然奇想,如果我们给宝塔面板设置一个域名,然后在把这个域名套入到cdn中,来实现域名访问。这样,只要cloudflare不挂,你的面板就可以一直访问到。而且,通过cdn访问也隐藏了服务器ip,原则上来说也是安全的。一、准备域名你需要准备一个域名。二:新建网站宝塔面板中新建一个站点。也不要什么php版本了,选择纯静态就可以了。域名,就是你准备好的域名。三:宝塔面板设置域名在面板设置中填写你刚刚准备好的域名,具体如图:四:cloudflare端口By default, Cloudflare proxies traffic destined for the HTTP/HTTPS ports listed below.HTTP ports supported by Cloudflare:默认情况下,Cloudflare会代理发往下面列出的HTTP/HTTPS端口的流量。Cloudflare 支持的 HTTPs 端口为: 80 8080 8880 2052 2082 2086 2095 Cloudflare 支持的 HTTPs 端口为: 443 2053 2083 2087 2096 8443五、修改端口我们需要把端口改为8080,宝塔面板修改端口,就是在面板设置中,不会的看图。六:接入CDN上面的都做好之后,我们现在可以把域名接入cloudflare中了。如图:可以先不要点亮灰色的云朵。七、设置{饭袋}这一步很重要,在刚刚的新建的网站里面设置一个{饭袋}。此处为隐藏的内容发表评论并刷新,方可查看八、点亮灰云现在我们可以在cloudflare中点亮域名的灰色云彩了,如图:九、效果预览现在可以在浏览器中用域名打开你的宝塔面板来访问了,访问形式:域名+安全入口。哇,效果真是流弊啊,现在全国ping下。我们看到已经在cdn的状态下了。十、总结这个教程针对你的IP被那啥的情况。如果我们的IP一切正常,也没必要这么设置了。这个教程的灵感自宝塔官方论坛的一个帖子。但是官方貌似没有解决这个问题。刚好自己也碰到了就用了上面的方式测试了一番,竟然成功了。问题的来源如下:假如我服务器的真实IP为:66.112.xxx.xxx,访问面板的时候也是66.112.xxx.xxx:8888,经过cloudflare解析后变成了104.27.161.250,面板里面设置服务器IP为104.27.161.250不知道可不可行,如果修改后面板访问不了了怎么恢复成原来的服务器IP66.112.xxx.xxx官方的帖子:https://www.bt.cn/bbs/thread-38518-1-1.html文章来源:大鸟博客 https://www.daniao.org/7379.html
2023年10月21日
110 阅读
0 评论
0 点赞
2023-10-21
WordPress判断用户特定内容只对管理员可见
WordPress特定内容只对管理员可见之前判断登录用户的角色用的是current_user_can()方法,比如判断当前用户是否是作者用current_user_can('author'),但对于WordPress 5不再可行。current_user_can的用法变了,正确的用法是传递$capability。除此之外,还有哪些更高效的方法来判断WordPress用户角色呢? 今天体验盒子在baidu和Google谷歌镜像上搜了一圈“WordPress判断用户角色和权限及管理员,WordPress特定内容只对管理员可见”,发现很多结果都过于老旧,于是重新总结了一下,本文内容适用于最新的WordPress5。 一、用current_user_can判断当前用户是否具有特定权限与功能。1<?php current_user_can( $capability , $object_id ); ?> $capability(string) (必须) [角色或功能].默认: 无 $object_id(int) (可选的) .默认: 无 不要将角色名称传递给current_user_can(),因为这不能保证其正常工作。传递用户角色名称(如author、contributor)作为参数不能100%保证返回正确的结果,正确的用法是传递$capability,用权限值比角色名称更靠谱。 所以,要根据不同角色拥有的权限来判断用户角色,用户权限可以在Roles and Capabilities中找到。判断示例判断用户是否为管理员(Administrator) if( current_user_can( 'manage_options' ) ) { echo 'The current user is a administrator'; } 判断用户是否为编辑(Editor) if( current_user_can( 'publish_pages' ) && !current_user_can( 'manage_options' ) ) { echo 'The current user is an editor'; } 判断用户是否为作者(Author) if( current_user_can( 'publish_posts' ) && !current_user_can( 'publish_pages' ) ) { echo 'The current user is an author'; } 判断用户是否为投稿者(Contributor) if( current_user_can( 'edit_posts' ) && !current_user_can( 'publish_posts' ) ) { echo 'The current user is a contributor'; } 判断用户是否为订阅者(Subscriber) if( current_user_can( 'read' ) && !current_user_can( 'edit_posts' ) ) { echo 'The current user is a subscriber'; } 二、用$current_user判断$current_user是WordPress的一个全局变量,当用户登录后,这个里面就会有用户的角色和权限信息。当WordPress的init action执行后,就可以安全的使用$current_user全局变量了。在模板文件中判断登录用户是否为作者(Author) global $current_user; if( $current_user->roles[0] == 'author' ) { echo 'The current user is an author'; } 在functions.php中判断用户是否为作者(Author) add_action( 'init', 'check_user_role' ); function check_user_role() { global $current_user; if( $current_user->roles[0] == 'author' ) { echo 'The current user is an author'; } } 检查用户角色之前,还可以先检查一下用户是否登录 三、使用WordPress Levels判断用户角色和权限及管理员扩展一下。我们用第一个方法的current_user_can来更灵活的判断用户角色、权限、管理员,下图展示了WordPress各个用户组所对应的级别,那么我们需要来判断是否为管理员,也就是Administrator(level_10):WordPress用户级别的范围是0到10。用户级别0(零)是最低级别,用户级别10是最高级别-意味着用户级别10具有绝对权限(最高权限级别)。用户级别功能表WordPress User Level空白单元格意味着该功能甚至不适用于特定的用户级别。“-”表示用户级别具有功能,但仅部分功能。“ +”表示用户级别具有该功能,但只能影响其自己的对象(例如,帖子)或较低用户级别的对象。“ x”表示用户具有该菜单项可用的全部功能。User Level:012345678910Dashboard—–xxxxxxxxxxxWrite—–Write Post –xxxxxxxxx—–Write Page xxxxxxManage—–Posts –++++++++x—–Pages +++++x—–Categories –––xxxxxxx—–Comments xxxxxxxxxx—–Awaiting Moderation –––xxxxxxxLinks—–Manage Links +++++x—–Add Links xxxxxx—–Link Categories xxxxxx—–Import Links xxxxxxPresentation—–Themes xxx—–Theme Editor xxxPlugins—–Plugins xxx—–Plugin Editor xxxUsers—–Your Profilexxxxxxxxxxx—–Authors and Users –++++xOptions—–General xxxxx—–Writing xxxxx—–Reading xxxxx—–Discussion xxxxx—–Permalinks xxxxx—–Miscellaneous xxxxxUpload—–(only if enabled) xxxxxxxxxx012345678910用level_10判断是否为wordpress管理员代码如下 if(current_user_can('level_10')){ //加入符合管理员后需要添加的内容 } 这样想判断其他权限用户也就是换个级别就可以了。四、更简单高效的方法还有一种更直接的方法,例如判断当前用户是否为管理员 global $current_user; if(in_array( 'administrator', $current_user->roles )){ echo 'administrator'; } 也可以这样 administrator 不太严谨的高效写法,需要修改administrator为你的管理员用户名
2023年10月21日
4 阅读
0 评论
0 点赞
2023-10-21
如何使用Peertube托管自己的Youtube
Peertube is a federated and open source video hosting platform that you can run from your own computer. Iit allows you to completely control all the content that you host and share from your website. This tutorial shows you how to install and host Peertube on Ubuntu.CONTENT Why Host and Use Peertube Installing Peertube Configuring Nginx and SSL Configuring and Running Peertube Using Peertube Frequently Asked Questions Tip: if you just want to watch YouTube offline, there is no need to install Peertube. Check out all the ways to watch YouTube offline.Why Host and Use PeertubeOne of the most attractive features of Peertube is its ability to load videos from other instances, making it possible to view content from outside your website but still retain the control over your data.Another advantage of Peertube over Youtube is that it is entirely open source. (Learn all about open source licenses here.) This makes it easy for anyone to scrutinize the program’s codebase, which can be helpful for users that are concerned about their data security.Good to know: learn more about protecting your data online by installing privacy and security extensions in Chrome.Installing PeertubeBefore you can install Peertube, you need to make sure that you have a server ready. This could be your personal PC or a rented server from a web host. This tutorial is done on an Ubuntu VPS from Digitalocean. Set up a new user account for Peertube. This will allow you to easily control what the program can do inside your system: sudo useradd -b /bin/bash -m -d /var/www/peertube -G sudo peertube sudo passwd peertubeCreating a new user account also allows you to set the $HOME variable under “/var/www/.” This is important, as the Web backend for Peertube will not be able to traverse the default “/home” heirarchy. Switch to your new user account with the command: su peertube Install the dependencies for Peertube: sudo apt install cron wget curl unzip python3-dev python-is-python3 certbot nginx python3-certbot-nginx ffmpeg postgresql postgresql-contrib openssl g++ make redis-server git Install NodeJS in your machine: curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - sudo apt update sudo apt install nodejs Install Yarn. This is a powerful yet lightweight package manage for NodeJS: curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | sudo tee /etc/apt/sources.list.d/yarn.list sudo apt update sudo apt install yarn Once you have installed all of the dependencies for Peertube, configure your system to install the program. First, enable the program’s database backend: sudo systemctl enable postgresql sudo systemctl start postgresql sudo systemctl enable redis-server sudo systemctl start redis-server Add your Peertube user to PostgreSQL by running the following commands: cd $HOME sudo usermod -aG peertube postgres sudo -u postgres createuser -P peertube Create the database for the program by running the following commands: sudo -u postgres createdb -O peertube -E UTF8 -T template0 peertube_run sudo -u postgres psql -c "CREATE EXTENSION pg_trgm;" peertube_run sudo -u postgres psql -c "CREATE EXTENSION unaccent;" peertube_run Create the directory structure of the program in your home directory: mkdir config storage versions chmod 750 ./config Download the Peertube binary files: cd ./versions wget https://github.com/Chocobozzz/PeerTube/releases/download/v5.0.1/peertube-v5.0.1.zip unzip peertube-v5.0.1.zip cd ./.. Create a symbolic link between your install and your home directory: ln -s /var/www/peertube/versions/peertube-v5.0.1 /var/www/peertube/peertube-latest Install Peertube using the following Yarn command: cd ./peertube-latest yarn install --production --pure-lockfileConfiguring Nginx and SSLBy default, Peertube opens its Internet service on port 9000. While you can access the program from that, it is good practice to create a reverse proxy between the program and a well-known port.The program’s developers have made a template file that you can use to create your own reverse proxy by running the following command:sudo cp /var/www/peertube/peertube-latest/support/nginx/peertube /etc/nginx/sites-available/peertube sudo rm /etc/nginx/sites-enabled/defaultConfigure your new template file by opening it using a text editor:sudo nano /etc/nginx/sites-available/peertubeInside, change every instance of these two variables: ${WEBSERVER_HOST} and ${PEERTUBE_HOST}. For the ${WEBSERVER_HOST}, replace it with your machine’s FQDN. Meanwhile, replace ${PEERTUBE_HOST} with “127.0.0.1:9000.” Press Ctrl + O, then Ctrl + X to save your file to disk and exit the text editor.Enable the Peertube Nginx config file and restart Nginx.sudo ln -s /etc/nginx/sites-available/peertube /etc/nginx/sites-enabled/ sudo systemctl reload nginxCreating Your SSL CertificateWe are obtaining a new SSL certificate using the free Certbot utility from Let’s Encrypt. (You can also create a wildcard SSL certificate if you intend to use it on multiple (sub)domains.)sudo certbotCertbot will scan your Nginx configuration and bring up the list of domains hosted on your server. Enter the number beside the domain for which you want to obtain a new SSL certificate.Once the SSL certificate is issued, certbot will auto-update your Nginx config file with the correct entry. You just need to reload your Nginx configuration to make sure all is running well.sudo systemctl reload nginxTip: enabling SSL will encrypt all TCP connections to your instance; however, it is better practice to secure your Linux server from the get go.Configuring and Running Peertube With both your Nginx server and SSL certificate done, you can now configure your Peertube instance. You can use a template that the developers have made to streamline this process. Run the following commands: cd $HOME cp /var/www/peertube/peertube-latest/config/default.yaml /var/www/peertube/config/default.yaml cp /var/www/peertube/peertube-latest/config/production.yaml.example /var/www/peertube/config/production.yaml Open the “production.yaml” file in a text editor: nano /var/www/peertube/config/production.yaml Change the hostname: variable to your machine’s FQDN: Generate a random secret for your instance with the following command: openssl rand -hex 32Go back to your “production.yaml” file and paste your random secret beside the peertube: variable. Look for the database: block. Change the suffix: block to “_run.” Change the password: variable to your database account’s password. Go to the smtp: block and find the hostname: variable. Change that to the hostname of your mail server. Also, change both the username: and password: variables to the credentials of your email account. Replace the from_address: variable with the email address of your email account. Once you are done making the changes, press Ctrl + o to save the file and Ctrl + x to exit the file.Creating a Peertube Service FileTo make Peertube run automatically at startup, we are creating a systemd service file for Peertube. Run the following command to copy the template systemd file to the system: sudo cp /var/www/peertube/peertube-latest/support/systemd/peertube.service /etc/systemd/system/ Reload systemd to apply your new service file. sudo systemctl daemon-reload sudo systemctl enable peertube sudo systemctl start peertubeUsing PeertubeIf everything is configured properly, you should be able to access Peertube from your own domain name.By default, every new Peertube instance creates a root account that you can use as the site’s administrator. To use this, run the following command:sudo journalctl -u peertube | grep "User password:"Go back to your Peertube website and press the “Login” button on the page’s upper-left corner. Write “root” as your username and paste its password.Peertube will greet you with a brief message that contains links to the program’s documentation.Once you have reviewed the content of the message, press X on the window’s upper- right corner to start using your Peertube website.Frequently Asked QuestionsIs it possible to use Peertube without a domain name?No. Peertube requires you to have a valid SSL certificate in your instance. While it is possible to create your own SSL certificate without a domain name, doing this will make your site insecure for other users.Can I copy the default.yaml file while configuring Peertube?Peertube depends on the “default.yaml” file for some of its core settings. Without the “default.yaml” file, your instance will most likely render it inaccessible.Why am I getting a blank page when I open my Peertube website?This issue is most likely due to a permissions issue with your root peertube directory. By default, Nginx requires every Web folder, as well as its root, to be world readable.You can fix this issue by running the following command: sudo chmod 755 /var/www/peertube.Image credit: Unsplash. All alterations and screenshots by Ramces Red.GitHub – Chocobozzz/PeerTube: ActivityPub-federated video streaming platform using P2P directly in your web browser
2023年10月21日
17 阅读
0 评论
0 点赞
1
...
3
4
5
...
7