回答:
「最良の」ディレクトリはありません。そして、人々は、この質問は主観的なものであることを主張するかもしれない、またはされるファイルの実際の配置が問題-、後者-そこについて、彼らがしている権利がいない間されている Unixライクなシステムに何を置く場所に関する勧告を標準化しました。
ファイルシステム階層標準は、これと申し出、あなたに以下のように定義しています。
/var
–ログなど、通常の操作中に変化するデータを配置する場所/var/www
は、ApacheのWebコンテンツを配置するデフォルトのディレクトリですが、その使用法はまったく標準化されておらず、人々が配置する「通常の」場所ですデフォルト設定を頻繁に変更しないでください。
/srv
–このディレクトリには、システムが提供するデータが含まれている必要があります。これは通常あなたが望む場所です。FHSの説明:
これを指定する主な目的は、ユーザーが特定のサービスのデータファイルの場所を見つけ、読み取り専用データ、書き込み可能なデータ、およびスクリプト(cgiスクリプトなど)に単一のツリーを必要とするサービスを合理的に配置できるようにすることです。特定のユーザーのみが関心を持つデータは、そのユーザーのホームディレクトリに移動する必要があります。(…)
データを構造化する1つの方法
/srv
は、プロトコルなどです。ftp
、rsync
、www
、およびcvs
そのため、単純に/srv/www
ディレクトリを作成してこれを使用します。マシンで提供したい仮想ホストごとにサブフォルダーを作成できます。
/home
本当に一人のユーザーに属するべきファイルが含まれています。たとえば、Apacheではuserdirsが許可されているためhttp://example.com/~username
、を介してユーザーのWebファイルにアクセスできpublic_html
、ユーザーのホームのディレクトリから提供されます。
複数の人の間で共有されているサーバーを使用し、すべての人が独自のスクリプトをホストできるようにする場合は、ここで行う必要があります。ディレクトリは、所属するユーザーのみが書き込み可能にすることを忘れないでください。
基本的に/srv/www
、/var/www
ディレクトリであるため、ホストするWebプロジェクトのサブディレクトリを作成する必要があります。その後、これらのディレクトリにさまざまな権限を定義して、特定のユーザーまたはユーザーグループがそれらに書き込むことを許可できます。一度に1人のユーザー用のプロジェクトがある場合は、を使用します/home
。
http://example.com/~username
通常/home/username/
、を指していませんが、を指し/home/username/public_html/
ます。
/var/www
、変更の時間です!
www
私にとってはサブドメインのように聞こえます。
システム上のWebファイルにLinuxシステム上の1人のユーザーのみがアクセスする場合。ユーザーのホームディレクトリを使用します(~/
)。
システム上のWebファイルに、Linuxシステム上の複数のユーザーがアクセスする場合。を使用し/srv/
ます。
これはまさにhttp://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#SRVDATAFORSERVICESPROVIDEDBYSYSTEMが述べていることです。
引用は次のとおりです。
/ srvには、このシステムによって提供されるサイト固有のデータが含まれています。
これを指定する主な目的は、ユーザーが特定のサービスのデータファイルの場所を見つけ、読み取り専用データ、書き込み可能なデータ、およびスクリプト(cgiスクリプトなど)の単一ツリーを必要とするサービスを合理的に配置できるようにすることです。特定のユーザーのみが関心を持つデータは、そのユーザーのホームディレクトリに移動する必要があります。
http://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.html#SRVDATAFORSERVICESPROVIDEDBYSYSTEMに記載されているとおり
~/http/your-website-directory/
または(httpsプロトコル)の場合:~/https/your-website-directory/
~/your-website-directory/
/srv/http/your-website-directory/
または(httpsプロトコル)の場合:/srv/https/your-website-directory/
/srv/your-website-directory/
なんでwwwじゃないの?これは、Apache時代からの遺産です。wwwは、使用されているプロトコルを指定しません。Debianは現在でもこれを使用していますが、たとえばArch linuxは/ srv / httpを使用しています。
/var/www
、通常は別のドライブに持っています(好みだけです)。