符号 Link 创建后损坏

Symbolic Link broken after creation

创建符号 link

$ sudo ln -s ./sites-available/examble.domain.com ./sites-enabled

编译 NGINX - 由于损坏的符号 links

而失败

注意: 问题与NGINX无关,NGINX编译只是为了帮助我意识到问题存在。下面描述的解决方案适用于任何其他相关问题。

$ sudo nginx -t
nginx: [emerg] open() "/etc/nginx/sites-enabled/example.domain.com" failed (2: No such file or directory) in /etc/nginx/nginx.conf:62
nginx: configuration file /etc/nginx/nginx.conf test failed

确认符号 link 已损坏

$ file ./sites-enabled/example.domain.com
./sites-enabled/example.domain.com: broken symbolic link to ./sites-available/example.domain.com

问题是SOURCE放到目标目录时没有重新解释

因此,如果您想要 link 的文件是 ~/file,并且您想要 link 将其 ~/folder 使用:

ln -s ./file ./folder/

那么符号link会认为file~/folder/file而不是~/file

因此,您必须 进入 目录 ~/folder 并从那里执行 ln 命令。

所以,问题是...

ln 需要相对 SOURCE 目录到 TARGET 目录。不是当前目录的相对 SOURCE 目录。

最终解决方案

# Getting into the folder
cd ./sites-enabled

# Creating symbolic link
ln -s ../sites-available/example.domain.com ./