저는 Ubuntu를 처음 사용하고 12.04를 설치했습니다. 저는 Windows에서 wamp 서버를 사용했는데, OS를 변경한 후 일부 파일을 www 폴더에서 /var/www
Ubuntu로 옮겼습니다. 하지만 브라우저에서 해당 폴더를 보려고 하면 아무 것도 표시되지 않습니다.
아마도 권한 문제에 문제가 있는 것 같습니다. /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는 다음과 같은 대신 이를 표시합니다.
이 문제를 해결하려면 index.* 파일을 삭제하거나 다른 이름으로 바꾸세요. 또는 DirectoryIndex
지시문을 변경하고 아파치를 다시 로드할 수 있습니다( /etc/init.d/apache2 reload
).
기본적으로 아파치 DocumentRoot
는 /var/www
. 해당 폴더 아래의 파일만 표시됩니다. 또한 동일한 사용자가 대상을 소유한 경우에만 심볼릭 링크를 따릅니다. 아래에 파일이 있으면 /var/www
신경 쓸 필요가 없습니다.
www-data
Apache는 사용자가 읽을 수 없는 파일을 나열하지 않습니다 . 마지막 그룹(아래에 표시됨 ) 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/www
수 http://localhost/
있습니다.