我的Caldav和Carddav都是用Baikal自己搭建的,用了443端口,作为普通的HTTPS页面。之前虽然在macOS添加账号的时候经常验证失败,但是多试几次也能通过,可是升级了High Sierra 10.13.1之后,再次添加Carddav账号就一直无法验证了。
后来查看服务器上的记录发现,nginx完全没有记录。反而是iptables挡住了很多对8843
端口的请求。于是尝试着把8843端口开放,并且让nginx监听这个端口,于是Carddav立即就验证通过了。
之后Google得知,对于dav服务,macOS使用了默认端口,https://support.apple.com/en-sg/HT202944。
而问题在于,即使设置Carddav的端口,指定为443,系统仍然是使用默认的8843端口。
Carddav SSL使用的是8843,非SSL连接使用8800
Caldav SSL使用8443,非SSL使用8008
猜测这是bug,因为之前是可以连接的。另外一个说明这是个bug的现象是,对于这一版本的系统,设置Caldav的端口以后,再次打开会发现设置好的端口号不见了。
但不管怎样,还是建议使用以上各端口,会发现连接更稳定了,而且各个平台的连接都不容易出错了。