/var/www 폴더 관련 문제

/var/www 폴더 관련 문제

저는 Ubuntu를 처음 사용하고 12.04를 설치했습니다. 저는 Windows에서 wamp 서버를 사용했는데, OS를 변경한 후 일부 파일을 www 폴더에서 /var/wwwUbuntu로 옮겼습니다. 하지만 브라우저에서 해당 폴더를 보려고 하면 아무 것도 표시되지 않습니다.

아마도 권한 문제에 문제가 있는 것 같습니다. /var/www폴더 에 대한 적절한 권한은 무엇입니까 ? 내 /var폴더 권한은 다음과 같습니다.

drwxrwxr-x  4 root root     1024 Feb  4 20:06 www

나는 달렸다

chmod -R 755 /var/www  
chown -R root /var/www

현재 해당 /var/www폴더는 비어 있지만 브라우저에서 해당 폴더 아래의 파일을 표시하도록 Apache를 어떻게 구성할 수 있습니까?

답변1

기본적으로 Apache는 디렉터리 목록 대신 다음 파일을 표시하도록 구성됩니다.

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

다음을 사용하여 이러한 모든 항목을 재귀적으로 나열할 수 있습니다.

find /var/www -name 'index.*'

디렉토리에 이러한 항목이 있으면 Apache는 다음과 같은 대신 이를 표시합니다.

Apache 파일 목록의 예

이 문제를 해결하려면 index.* 파일을 삭제하거나 다른 이름으로 바꾸세요. 또는 DirectoryIndex지시문을 변경하고 아파치를 다시 로드할 수 있습니다( /etc/init.d/apache2 reload).

기본적으로 아파치 DocumentRoot/var/www. 해당 폴더 아래의 파일만 표시됩니다. 또한 동일한 사용자가 대상을 소유한 경우에만 심볼릭 링크를 따릅니다. 아래에 파일이 있으면 /var/www신경 쓸 필요가 없습니다.

www-dataApache는 사용자가 읽을 수 없는 파일을 나열하지 않습니다 . 마지막 그룹(아래에 표시됨 ) r이 있는 한 모든 것이 정상입니다.x^

drwxrwxr-x  4 user group     4014 Feb  4 23:16 filename
       ^ ^

x기술적으로 는 폴더 만 필요합니다 . 권한 변경 명령이 정확했습니다.

chmod -R 755 /var/www  

폴더에 색인 파일이 없어도 Apache가 파일을 나열하지 않으면 다음을 사용하십시오.

tail -f /var/log/apache2/error.log

아파치가 어떤 오류를 겪었는지 확인하세요.

답변2

다음 명령을 사용하여 Apache를 설치하십시오.

sudo apt-get install apache2

이제 파일을 열고 /etc/apache2/sites-enabled/000-default다음 줄이 있는지 확인하십시오.

DocumentRoot /var/www

다른 경로가 있으면 다음으로 변경하세요./var/www

이제 HTML 파일을 넣어 브라우저에서 볼 수 있습니다. 또한, 브라우저에 추가하여 방문하시면 index.html보실 /var/wwwhttp://localhost/있습니다.

관련 정보