2019年6月

首先声明,浏览的Cookie操作都是通过HTTP Header(俗称“Http头”) 来实现。所有的服务器与客户端之间Cookie数据传输都是通过Http请求头来操作。

PHP中setCookie(函数的实现),就是对HTTP头进行封装,由此看来 使用 header 与 使用setCookie是一样的。

由于header头信息属于HTTP协议内容,必须先把头信息发送到服务器,再进行数据下载等其他操作,所以在setCookie 与 header 之前不能有任何内容输出(例如:echo/printf等)

header 设置Cookie方式:

header("Set-Cookie: testcookie=中文; path=/; domain=.sunphp.org; expires=".gmstrftime("%A, %d-%b-%Y %H:%M:%S GMT",time()+9600));

setCookie设置方式: 语法:

setcookie(name,value,expire,path,domain,secure)

例:

setcookie("website", 'www.sunphp.org', time()+3600*24);
参数 描述
name 必需。规定 cookie 的名称。
value 必需。规定 cookie 的值。
expire 可选。规定 cookie 的有效期。
path 可选。规定 cookie 的服务器路径。
domain 可选。规定 cookie 的域名。
secure 可选。规定是否通过安全的 HTTPS 连接来传输 cookie。

Unable to round-trip http request to upstream: EOF问题

电脑已经跑了几个月了,太卡了,今天就给重启了一下. 重启之后,再去开网页,出了这么一个鬼:

 Unable to round-trip http request to upstream: EOF问题

心里就纳闷也没开什么应用啊,上不了网了? 突然瞟到右下角有一个蓝灯(lantern)标志亮了,恍然大悟,退出蓝灯,然后一切皆恢复正常。

就这个鬼

微信截图_20190610204149.png

maccms使用Dplayer后如何实现自动播放下一集?

自动下一集功能已经在maccms10(苹果cms10)上面测试通过,maccms8(苹果cms8)理论上也支持,以下是关键代码块

<script type="text/javascript">
    var dp = new DPlayer({
        container: document.getElementById('playerCnt'),
        autoplay: true,
        hotkey: true,
        screenshot: true,
        logo: '/static/logo.png',
        video: {
            url: parent.MacPlayer.PlayUrl,
            live: true,
            type:'auto'
        },
        hlsjsConfig: {
            maxBufferSize: 8*5000*5000,
            p2pConfig: {
                logLevel: true,
                live: false,
            }
        }
    });

    dp.on('ended', function (){
        if(parent.MacPlayer.PlayLinkNext!=''){
            top.location.href = parent.MacPlayer.PlayLinkNext;
        }
    });

    var _peerId = '', _peerNum = 0, _totalP2PDownloaded = 0, _totalP2PUploaded = 0;

    dp.on('stats', function (stats) {
        _totalP2PDownloaded = stats.totalP2PDownloaded;
        _totalP2PUploaded = stats.totalP2PUploaded;
    });
    dp.on('peerId', function (peerId) {
        _peerId = peerId;
    });
    dp.on('peers', function (peers) {
        _peerNum = peers.length;
    });

</script>

说明一下,该代码是包含了p2p加速功能的,但是具体实现,需要引入下面这2个脚本。

<script src="http://www.juqing8.com.cn/static/player/cdnbye@latest.js"></script>
<script src="http://www.juqing8.com.cn/static/player/p2p-dplayer@latest.js"></script>