Apache不遵循符号链接(403):在Vagrant中创建符号链接:Windows主机,Ubuntu Guest

时间:2016-03-17 19:44:31

标签: apache ubuntu vagrant virtualbox symlink

对我来说,主要的问题是apache没有关注我的符号链接,并且给了我403错误。

  • 我使用的是Windows主机和Ubuntu~14.04访客

  • 我在Windows主机中创建了符号链接,并且位于vagrant / virtualbox共享文件夹中。

  • 在我的虚拟主机中,我有apache设置为遵循符号链接。
  • 我还将chmod -R / var / www设置为用户www-data
  • 在我的Vagrantfile中,我有一行如下:

    config.vm.synced_folder ".", "/var/www", :mount_options => ["dmode=777", "fmode=666"]
    
    config.vm.provider "virtualbox" do |v|
        v.customize ["setextradata", :id, "VBoxInternal2/SharedFoldersEnableSymlinksCreate/", "1"]
    end
    
  • Ubuntu告诉我由于协议错误我无法创建符号链接

2 个答案:

答案 0 :(得分:2)

解决方案:

据我所知,Windows Symlinks在Linux中不起作用。 使用ln -s创建一个符号链接,当我遇到流浪汉时,给我“协议错误”。

我必须在windows中使用admin属性和ssh启动命令行,然后才能创建linux符号链接。一旦我在linux中创建了符号链接,它就可以正常工作。

答案 1 :(得分:0)

我最近遇到了同样的问题,即我收到的协议错误'尝试在两个同步的流浪文件夹(NFS)之间创建符号链接(ln -s)。

由于这些文件夹在技术上驻留在Windows ln -s中,因此会返回错误;如果在命令提示符下在Windows目录之间执行cd后尝试mklink到目录(在您的流浪者框中),您也会收到错误。

因此,我尝试使用unix样式的目录格式尝试创建指向目标目录的Windows符号链接,如下所示:

mklink /D "D:\My New Symlink\" "/home/vagrant/my_target_folder"

如果它不适合你,请告诉我,我会检查我的流浪汉配置文件是否有任何允许这样做的潜在设置。