Beim Bereitstellen eines Projekts auf einem Server wollte ich nur den öffentlichen Ordner in das Dokumentstammverzeichnis einfügen.
Angenommen, Sie haben einen Baum, der so aussieht.
root
├── project
│ ├── etc
│ └── public
│ ├── index.html
│ ├── css
│ └── js
└── public_html
└── project
Was ich tun möchte ist /root/public_html/project Zu /root/project/public Link zu
public_html
└── project
├── index.html
├── css
└── js
Der Zustand, der aussieht.
$ cd /root/public_html
$ ln -s /root/project/public project
Ergebnis
$ ls -l
drwx---r-x project
Es gibt keinen Link.
$ cd project
$ ls -l
lrwxrwxrwx public -> /root/project/public
/root/public_html/project Es gibt einen Link namens public unter. Da es sich um einen Fehler handelt, löschen Sie ihn einmal.
$ rm public
Mit / * alle Dateien darunter wieder herausfordern.
$ cd /root/public_html
$ ln -s /root/project/public/* project
$ ls -l
lrwxrwxrwx index.html -> /root/project/public/index.html
lrwxrwxrwx css -> /root/project/public/css
lrwxrwxrwx js -> /root/project/public/js
erledigt.
Mit dieser Methode /root/public_html/project Der Link wird eingefügt, nachdem das aufgerufene Verzeichnis tatsächlich vorhanden ist. Damit /root/public_html/project Ich war wütend, als ich versuchte, dies ohne es zu tun.
Löschen Sie das vorhandene Verzeichnis einmal.
$ pwd
/root/public_html
$ rm -rf project
$ ln -s /root/project/public project
$ ls -l
lrwxrwxrwx project -> /root/project/public
Dies ist auch ein Link. Hier wird das Projekt selbst zum Bindeglied.
Als ich es auf einem Mietserver versuchte, als ich versuchte, "das Verzeichnis selbst zu verknüpfen", wurde es später von einem leeren Verzeichnis überschrieben.
Recommended Posts