自从上次 SSD 硬盘不小心挂了之后,就算是返厂检修,一旦是算坏只能更换新的无法提供维修服务。这次我对待一些数据就更加小心了。尤其是代码,其实这次代码也并没有损失多少,丢失了一些平时的练习的项目。但为了保证代码的完整性和整体的同步性,我决定使用 Dropbox 同步我的代码。这样平时练习的代码也不必丢到 Github 或者花麻烦自建的服务器上面,什么都不需要操作就可以同步与无形之中。
移动用户目录的 src 至 Dropbox 目录并创建软链接:
$ mv ~/src ~/Dropbox/src
$ ln -s ~/Dropbox/src ~/src
如果这是写 Dropbox 同步代码的事情,那到这里就结束了,后来发现 apache
无法访问 php 的目录,报如下错误:
Symbolic link not allowed or link target not accessible:
/Users/icyleaf/src
这个问题是因为我 VirtualHost 是这样配置的,使用的是经过处理的软链接的方式访问,而 apache 默认不允许这种行为:
<directory " users icyleaf src php">
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride All
Order allow,deny
Allow from all
</directory>
但是我 Directory 已经配置了 Options FollowSymLinks
但还是报如下错误,经过反复的检查 /Users/icyleaf/src
目录的权限也没有问题,最后只能在配置里把软链接替换成原始路径:
<directory " users icyleaf dropbox src php">
Options Indexes FollowSymLinks MultiViews Includes
AllowOverride All
Order allow,deny
Allow from all
</directory>
发现还是无法访问,但是报了的是另外一个错误:
Permission denied: access to / denied
又是一番折腾,最终发现居然是坑爹的 Dropbox 的访问权限居然是:
drwx------@ 21 icyleaf staff 714 7 30 06:07 Dropbox
调整权限:
$ chmod o+w ~/Dropbox
再次查看权限:
drwxr-xr-x@ 21 icyleaf staff 714 7 30 06:07 Dropbox
再次访问权限没有问题,替换为原来的软链接方式访问,一切搞定!
(完)