PHP with WebDav
借助[SabreDav](https://sabre.io/dav/)的开源库,PHP可以同时作为WebDav Server和Client,而且操作非常方便。
作为Server,可以提供WebDav服务对外使用。
作为Client,则可以作为客户端与支持WebDav的服务器交互。
有了它,远程操作文件又多了一种选择,包括但不限于
Home of Little Jelly
借助[SabreDav](https://sabre.io/dav/)的开源库,PHP可以同时作为WebDav Server和Client,而且操作非常方便。
作为Server,可以提供WebDav服务对外使用。
作为Client,则可以作为客户端与支持WebDav的服务器交互。
有了它,远程操作文件又多了一种选择,包括但不限于
文件传输备份经验总结
文件传输协议
1. FTP/FTPS/SFTP
2. SSH
3. SCP
4. WebDav
5. NFS (Linux,用于NAS等)
6. SMB (Windows,用于Samba等)
苹果系统上很多APP支持跨设备同步,实现方式不一,有的是用iCloud,有的是用自建的同步服务器,但速度不是太理想,延迟较高。
就拿我常用的OmniFoucs来说,用的是Omni免费的同步服务,同步一次要几十秒,经常出现早上在电脑改了状态,手机上晚上还没同步过来的情况。好在OmniFoucs支持自定义的WebDav服务,加之本人有台国内服务器,就自建了一个WebDav服务,迁移之后基本上秒同步,爽!
准备组建一个家庭用的NAS,使用群晖NAS。
群晖DS220+或更高规格的DS920+。
DS220+价格2780,Intel双核CPU,板载内存2G,另有一个内存插槽可自己升级,4G DDR4 2666,加一起最多6G。
ThinkPHP6的安装参考官方安装文档,使用composer安装。
安装稳定版
与前文使用Geth搭建Ethereum以太坊私链不同,这次搭建以太坊私链用的是Parity.
步骤
1. Parity下载
前文介绍了以太坊私链的搭建方案,有私链,就要有配套的区块浏览器。
亲测了十几款开源的区块浏览器,总结如下。
Solidity注意点
1. 非布尔类型不能转换为布尔类型,比如 `if(1)` `if(“some_str”)`在solidity中无效;
2. 其它语言中常用的控制结构,如`if` `while`等大都在Solidity中也可以,除了`switch`;
GETH Parity Openethereum这几种以太坊钱包命令行交互使用起来都差不多,下面给出几个示例。
其中 `method`表示命令,`params`表示参数,`’Content-Type:application/json’`表示要使用json格式的数据进行交互,`-X ‘POST’`表示要使用POST方法,最后的地址加端口为钱包的RPC地址和端口。
Linux下`umount`硬盘时提示`device is busy`,也就是目录忙,表示目录正在被使用。