web-dev-qa-db-ja.com

Symlink / var / wwwディレクトリ

私はシンボリックリンクを作成しようとしています:

/ var/www->/home/USER/code /

https://stackoverflow.com/questions/9104337/create-a-symbolic-link-of-directory-in-ubunt に従って、次のコマンドを入力しました:

Sudo ln -s/var/www/home/USER/code

しかし、結果は私が期待するものではありません。私のリンクは、wwwディレクトリ自体をリンクする代わりに、/ wwwディレクトリ内に保存されます。ローカルWebサーバーとしてApacheを使用しています。私の場合、次のようにコードにアクセスする必要があります。

localhost/code/PROJECT

一方、私は次のようなものを持ちたい

localhost/PROJECT

codeディレクトリは、すべてのプロジェクトを保存するディレクトリとして機能する必要があります。

私が逃しているものは何ですか?

16
user236603

シンボリックリンクを作成する前に、wwwディレクトリを削除(または安全のために移動)します。

したがって、/varが必要ですが、/var/wwwはありません。それから、そのときだけ、localhost/code/projectフォルダーを指すwwwというシンボリックリンクが作成されます。

3
Mendhak

あなたはln -s 'source'と 'target'を間違った方法で持っていると思います


間違った

Sudo ln -s /var/www /home/USER/code


右:

Sudo ln -s /home/USER/code /var/www


/home/USER/codeフォルダーにvar/wwwを指すシンボリックリンクが作成されますが、これは間違っています。

たとえば、サリーのサイト用のフォルダーは/home/webs/sallybydesign/にあります

cd /var/www

/var/wwwsallybydesignという名前のフォルダーまたはファイルは作成しないでください。

 Sudo ln -s  /home/ndmaque/webs/sallybydesign /var/www/sallybydesign

新しいファイルを表示するには(シンボリックリンク)

ls -l

sallybydesignというファイルが表示されます。これはhome/webs/sallybydesignフォルダーへのシンボリックリンクであり、実行すると

ls sallybydesign/ 

home/webs/sallybydesignフォルダーにファイルが表示されます。

その場合、vhostファイルを/var/www/sallybydesignにポイントすると、自動的にすべてのApache /var/wwwパーミッションを継承し、大量の問題を解決します。

29
Andy Mac