gpt4 book ai didi

ubuntu - Nginx 站点启用,站点可用 : Cannot create soft-link between config files in Ubuntu 12. 04

转载 作者:太空宇宙 更新时间:2023-11-03 16:40:38 28 4
gpt4 key购买 nike

我正在尝试在/etc/nginx/中的站点启用目录和站点可用目录中包含服务器 block 的配置文件之间创建软链接(soft link)。

我使用的命令是:

sudo ln -s sites-available/foo.conf sites-enabled/

当我执行时:

ls -l

结果是:

lrwxrwxrwx 1 parallels parallels 27 Aug  6 20:44 immigrationinformation.conf -> immigrationinformation.conf

immigrationinformation.conf -> immigrationinformation.conf 部分有红色字体的木炭。

当我尝试访问这个软链接(soft link)时,我被告知它已损坏。

当我在站点可用目录中创建软链接(soft link)时,即

sudo ln -s sites-available/foo.conf sites-available/foo_link.conf

一切正常。但是,如果我随后将其移动到启用站点的目录,链接将再次断开。

我可以通过文件管理器 GUI 创建软链接(soft link),但不能通过命令行。我也可以毫无问题地创建硬链接(hard link)。

我怀疑这是一个权限问题,所以我试过将两个目录和目录本身的所有权限设置为 777,并将所有者更改为 root 以外的其他内容,但仍然没有成功。

非常感谢任何帮助,谢谢。

最佳答案

您首先需要了解符号链接(symbolic link)的目标是路径名。它可以是绝对的或相对于包含符号链接(symbolic link)的目录

假设您在 sites-available 中有 foo.conf

尝试

cd sites-enabled
sudo ln -s ../sites-available/foo.conf .
ls -l

现在您将在启用站点的名为 foo.conf 的符号链接(symbolic link)中拥有目标 ../sites-available/foo.conf

需要说明的是,Apache 的正常配置是潜在站点的配置文件位于 sites-available 中,启用站点的符号链接(symbolic link)位于 sites-enabled 中,指向可用站点中的目标。您描述设置的方式似乎并非如此,但这不是您的主要问题。

如果您希望符号链接(symbolic link)始终指向同一个文件,而不管符号链接(symbolic link)位于何处,那么目标应该是完整路径。

ln -s /etc/apache2/sites-available/foo.conf mysimlink-whatever.conf

这是我的 ls -l/etc/apache2/sites-enabled 的(第 1 行)输出:

lrwxrwxrwx 1 root root  26 Jun 24 21:06 000-default -> ../sites-available/default

查看符号链接(symbolic link)的目标是如何相对于包含符号链接(symbolic link)的目录的(它以“..”开头,表示向上一个目录)。

硬链接(hard link)完全不同,因为硬链接(hard link)的目标不是目录条目而是文件系统 inode 。

关于ubuntu - Nginx 站点启用,站点可用 : Cannot create soft-link between config files in Ubuntu 12. 04,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18089525/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com