var curVid=0;
var vidItems=[];
$("li").each(function(index){
  if($(this).attr("data-id")!="")
    {
      if($(this).find("span.video").length>0) {
        if($(this).hasClass("list")){
          curVid=vidItems.push(index)-1;
        }else{
          vidItems.push(index);
        }        
      }
    }
})
console.log(vidItems);
function nextVideo()
{
    if(curVid<vidItems.length){
  curVid++;
  $($("li")[vidItems[curVid]]).click();
  }
}
setInterval(function(){
      try{
        if($("video").attr("autoplay")==undefined) $("video").attr("autoplay","true");
        if($("video")[0].ended) nextVideo();
        if($("video")[0].readyState==4 && $("video")[0].played.length==0) $("video")[0].play();
      }catch (e){}
},1000)
fangguai=function(){}

安装FCM for Mojo-WebQQ (FCM)

直接使用Weison的一键安装脚本,并启动。

配置Caddy

  • 在你的DNS管理页面上加入一条A记录,比如fcm。
  • 在Caddyfile里加上(把其中的域名和邮箱换成自己的):
https://fcm.your.domain {
  tls your@mail.box
  proxy / localhost:5005 {
   transparent
  }
}

重启Caddy: service caddy restart

配置客户端

首先你的Android手机要安装有Google服务框架,且已经登陆,且能连接到Google。

  • 项目Github页面上下载客户端程序
  • 在“服务器设置”里填入你的服务器域名,跟刚才Caddyfile里配置的一致,不用填端口号,例如:https://fcm.your.domain即可。
  • 在“管理设备”里,点右上角“+”,列表中出现你的设备名字后,点右上角上传按钮。
  • 在客户端上点击“重启”,等待二维码下载,使用QQ客户端扫码登陆,完毕!

进阶

在“账号设置”里可以输入QQ账号和密码,可能会在获取群消息时需要。但是密码是以明文存在服务器上的,如果觉得不安全,可以:

  • 编辑/root/FCM-for-Mojo/perl/start.pl,把其中pwd=> defined $passwd ? Digest::MD5::md5_hex($passwd) : undef 修改为 pwd=> defined $passwd ? $passwd : undef,并重启FCM。
  • 在客户端的“账号设置”里填密码时,直接填入QQ密码的MD5值(可通过在Linux命令行中输入 echo -n 你的QQ密码|md5sum 取得)。

搜了一圈,这个主题的教程都只有Debian系统下的,自己摸索了一阵子之后终于OK了。写个post记录一下。

安装 PHP 7 和 SQLite 3

由于Linux的yum源不存在php7.x,所以我们要更改yum源:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

安装 php 7.2

yum install php72w php72w-fpm php72w-common php72w-gd php72w-mbstring php72w-xml php72w-pdo
启用php-fpm,以便开机时自动启动。
systemctl enable php-fpm
启动php-fpm服务
service php-fpm start

安装 SQLite 3

yum install sqlite-devel

安装、配置 Caddy

安装

直接使用逗逼大佬的一键脚本
wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubi/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh install http.filemanager

配置

在进行配置前,请确认域名已申请好,并已解析到服务器上。
建立网站主目录:
mkdir -p /var/www/
设置权限
chmod 777 /var/www/
以下全部内容是一个整体,是一个命令,修改示例域名和电子邮箱后全部复制粘贴到SSH软件中并一起执行。

echo "http://your.domain {
    redir https://www.your.domain{url}
    }
    https://www.your.domain {
    gzip
    tls your@mail.box
    root /var/www
    fastcgi / 127.0.0.1:9000 php
    rewrite {
        if {path} not_match ^\/admin
        to {path} {path}/ /index.php?{query}
     }
}" > /usr/local/caddy/Caddyfile

重新启动Caddy
service caddy restart

安装 Typecho

首先cd到你的网站目录下,如 cd /var/www
然后:

wget http://typecho.org/downloads/1.1-17.10.30-release.tar.gz
tar zxvf 1.1*
mv ./build/* ./
rm -rf 1.1* buil*
chmod -R 755 ./*

结束

现在就可以访问域名进行博客的安装配置了。

Caddy 说明

启动:service caddy start
停止:service caddy stop
重启:service caddy restart
查看状态:service caddy status
查看Caddy启动日志:tail -f /tmp/caddy.log
安装目录:/usr/local/caddy
Caddy配置文件位置:/usr/local/caddy/Caddyfile
Caddy自动申请SSL证书位置:/.caddy/acme/acme-v01.api.letsencrypt.org/sites/xxx.xxx(域名)/

参考文献

小内存VPS安装Caddy+PHP 7+Sqlite 3环境,并快速搭建Typecho博客
Centos7 PHP的安装和配置
centos sqlite3安装及简单命令

关于Caddy、PHP、SQLite

关于Caddyfile配置

一定要在开头位置设置一个域名跳转redir,否则可能导致不能正常申请SSL证书。

PHP无法连接Sqlite3数据库

可能是网站目录或数据库文件没有写入权限。

    chmod 777 /usr/share/nginx/html
    chmod 666 /usr/share/nginx/html/database/test.db 

在Caddy里添加PHP后,执行PHP代码提示File Not Found,看日志输出Primary script unknown

网站所在目录没有写入权限,比如放在了/root下。

把网站目录移到一个有权限的位置,如:/var/www 就行了。

测试数据库连接

<?php
   class SQLiteDB extends SQLite3
   {
      function __construct()
      {
         $this->open('phpdb.db');
      }
   }
   $db = new SQLiteDB();
   if(!$db){
      echo $db->lastErrorMsg();
   } else {
      echo "Yes, Opened database successfully\n";
   }
?>

iptables 防火墙

安装iptable iptable-services

yum install -y iptables
yum update iptables 
yum install iptables-services

配置

#查看iptables现有规则
iptables -L -n
#先允许所有,不然有可能会杯具
iptables -P INPUT ACCEPT
#清空所有默认规则
iptables -F
#清空所有自定义规则
iptables -X
#所有计数器归0
iptables -Z
#允许来自于lo接口的数据包(本地访问)
iptables -A INPUT -i lo -j ACCEPT
#开放22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#开放21端口(FTP)
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#开放443端口(HTTPS)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
#允许ping
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
#允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
iptables -A INPUT -m state --state  RELATED,ESTABLISHED -j ACCEPT
#其他入站一律丢弃
iptables -P INPUT DROP
#所有出站一律绿灯
iptables -P OUTPUT ACCEPT
#所有转发一律丢弃
iptables -P FORWARD DROP

保存配置

service iptables save

开启iptables服务

#注册iptables服务
systemctl enable iptables.service
#开启服务
service iptables start 
#查看状态
service iptables status

参考文献

CentOS7安装iptables防火墙

关于配置FCM for Mojo-WebQQ

  • 如果在启动时执行npm start提示在@INC找不到Webqq.pm(原句不记得了2333),则去Mojo-WebQQ主页下载源码,然后把其中的/lib/Mojo解压缩传送到/usr/local/share/perl5/Mojo即可。
  • 如果在启动时提示IO::Socket::SSL 2.009+ required for TLS support,则先Ctrl+C结束程序,然后在shell状态下输入cpan进入cpan命令状态,输入install IO::Socket::SSL更新模块,中途可能会问是否test,可以no,完成后exit退出,再次启动FCM即可。