권장 사용법에 따라 웹 사이트가 / var / 또는 / usr /에 있어야합니까? 대한, 그리고 /var/(나는이 “응용 프로그램에 속하는 파일”을

에 따르면 리눅스 디렉토리 구조에 대한 가이드 , /usr/응용 프로그램 파일에 대한, 그리고 /var/(나는이 “응용 프로그램에 속하는 파일”을 의미 가정) 변경되는 파일입니다. 이 올바른지?

이 경우 어느 쪽을 사용하든 약간 찢어진 것입니다. 웹 사이트는 응용 프로그램 (동적이라면 말하면)이지만 다른 경우에는 Apache에서 사용되는 파일 모음 일뿐입니다.

기본 www가 디렉토리가 사는 곳 /var/www/, 그래서 우리는 사용하여 소송을 따라야한다 /var/websites/(유사하거나 뭔가를) 또는 선택 /usr/websites/그들이 응용 될 수 있기 때문에?

이것은 매우 사소한 질문이지만 그럼에도 불구하고 나를 괴롭 힙니다. /usr/web우리 웹 사이트는 모두 응용 프로그램이기 때문에 우리 의 경우에는 그와 비슷한 것을 기대하고 있습니다.

최신 정보:

이것은 회사 웹 사이트를위한 것입니다. 공유 호스팅 서버가 아니므로 서버를 분리 /home/하거나 그와 비슷한 것을 걱정할 필요가 없습니다 .



답변

에 따르면 FHS , /usr입니다 shareable, read-only data당신이 웹 사이트를 넣어 싶지 않은 곳 -. 여기에 코드를 넣어야합니다 (예 : Fedora는 WordPress에서이를 수행함). Fedora 용 웹 자산 패키징 안내서 도 참조하십시오 .

/var“가변 데이터 파일입니다. 여기에는 스풀 디렉토리 및 파일, 관리 및 로깅 데이터, 임시 및 임시 파일이 포함됩니다.” 더 낫지 만 여전히 옳지는 않지만 많은 시스템이 사용할 것입니다 /var/www. 따라서 잘못 배치하더라도 좋은 회사에 있습니다.

/srv“이 시스템에서 제공하는 사이트 별 데이터”입니다. -일치하는 것 같지만보다 일반적이지 않습니다 /var/www.

사이트 파일을 저장하는 다른 일반적인 위치는 /homewebsite등 의 특수 사용자를 만든 다음 해당 사용자의 homedir (예 🙂 안에 파일을 배치하는 것 /home/website입니다.


답변

Filesystem Hierarchy Standard ( Wikipedia )를 살펴보십시오 . 본인은 / srv / web / $ domain / {htdocs, logs, cgi-bin, …}을 사용하고 있습니다.


답변

웹 사이트는 사용자의 홈 디렉토리에 있어야합니다. 이들은 사용자 데이터이며 사이트 당 사용자별로 격리되어야하며 동적 콘텐츠는 적절한 권한이 부여 된 경우 동적 콘텐츠를 읽고 수정해야하는 파일과 함께 별도의 사용자로 다시 실행해야합니다.

최신 정보:

공유 호스팅 서버가 아니라고해서 좋은 보안 방법을 사용하지 말고 독립적 인 역할을 자체 보안 영역으로 분리해서는 안됩니다.


답변

결정적인 안내서는 그것이 적절한 장소 라고 말하는 파일 시스템 계층 표준 입니다 /srv.


답변

그들이 디스크에 사는 곳은 거의 중요하지 않습니다. 당신이 그들을 원하는 곳입니다.

모든 컴퓨터에 / www에서 실제 거주하는 곳으로의 symlink가 있으므로 컴퓨터마다 궁금 할 필요가 없습니다. 일부 구형 컴퓨터에는 사용자 디스크 용 / u0 및 / u1이 있으며 웹에 배치합니다. 일부는 / home이 직접 마운트되어 있으므로 거기로 이동하지만 / www는 항상 올바른 위치를 가리 킵니다.

또한 / usr 또는 / var에 구성을 두지 않습니다. 그것은 / local에 들어갑니다 (이것은 / u0 또는 / u1 어딘가의 심볼릭 링크입니다). 이렇게하면 일을 쉽게 백업 할 수 있습니다. 방금 사용자 디스크를 백업했습니다.

물론, 내가 선택한 OS 인 NetBSD에 대한 마스터 배포 사이트가 있습니다. 이 메인 머신 (실제로 xen 인스턴스)과 rsync / usr에서 원하는대로 시스템을 만듭니다. 내 인생을 쉽게 만듭니다.


답변

Apache 웹 서버에는 / var / www / 아래에 기본 웹 사이트가 있지만 다른 웹 사이트를 / srv / 아래에 두는 것이 좋습니다

우분투 서버 14.04 LTS에서 이것을 보았습니다. 기본 apache2.conf 파일에는 주석 처리 된 블록이 포함됩니다.

#<Directory /srv/>
#   Options Indexes FollowSymLinks
#   AllowOverride None
#   Require all granted
#</Directory>

답변

나에 따르면 인터넷 시스템을 공용 시스템 영역에 두지 말아야합니다.

인터넷 서비스 (Apache / Tomcat / SSH 등)는 정문이며, 이러한 서비스를 시스템 영역에 넣으면 일부 공격에 취약 할 수 있습니다.

다른 분리형 파티션과 같은 안전한 샌드 박스 영역에 다른 서비스를 넣은 것 이상입니다.

사용할 수있는 구조의 예는 다음과 같습니다.

/ --> Root System --> On SDA1 --> Root and System security operator access only
 |
 | -->/usr /etc /var etc.

/SRV --> Web Root --> On SDB1 --> Web users access with minimal rights access.
 |
 |-->/srv/bin & /srv/dta
      |
      |-->/srv/bin/apache (or any other APPLICATION Binaries)
      |-->/srv/dta/SQL (or any other APPLICATION Datas like a
                        database or web PHP files etc.)