[유태]님이 남기신 글:
>정말 상세한 답변 너무 고맙습니다. 책을 쓰신분이라 그런지
정말 정리가 잘되네요 ^^
>
>그런데 잘 안되는 부분이 있어더 또 질문을 합니다 ^^;
>
>나머지는 다 잘된거 같은데요...httpd.conf
수정을
>
><Directory />
> AllowOverride FileInfo
></Directory>
>
>이렇게도 해보고
>
><Directory /home/www/html/pub>
> Options FollowSymLinks MultiViews
> AllowOverride FileInfo
></Directory>
>
>이렇게도 해보고 둘다 했는데요...
>
>500 Internal Server Error 가 나옵니다.
>
>error_log 보니까...
>
>[Wed Jul 2 22:15:00 2003] [alert] [client 192.168.0.65]
/home/www/html/pub/.hta
>ccess: Options not allowed here
>
>.htaccess 옵션이 허용안된다 그러는데요...
>httpd.conf 파일 수정할때마다 아파치 restart 했는데, 왜 안되지요
ㅠ_ㅠ
>
>http://linuxchannel.net/docs/apache-allowoverride.txt
보니까
>500 에러는 .htaccess 문법 틀릴때도 나온다는데, 그건 아닌거
같구요.
>
>
>
>
>[산이]님이 남기신 글:
>
>>[유태]님이 남기신 글:
>>
>>>저는 리눅스 접한지 얼마안되었구요,
책같은것도 없이
>>>이곳 저곳 질/답 게시판 보고 서버를 만드는 바람에 응용이
잘 안되고
>>>하라는 데로만 따라하다보니 많이 허접합니다. ^^
>>>
>>>우선 이렇게 해보았습니다.
>>>
>>>http://ftp.linuxchannel.net/ftp.linuxchannel.net-htaccess
>>>내용을 /home/www/html/pub/ 에다가 .htaccess 로 파일을
만들었습니다.
>>>수정한 부분은 /.icons/ 를 /icons/ 로 모두 바꾸고
저장했습니다.
>>>
>>>http://ftp.linuxchannel.net/index.php
>>>http://ftp.linuxchannel.net/mktree.sh
>>>두가지 파일은 그대로 저장했구요.
>>>
>>>[utae@utae pub]$ ls -a
>>>. .. .htaccess index.php mktree.sh test(디렉토리)
>>>
>>>tree 파일을 만들기 위해 sh mktree.sh 하면...
>>>[utae@utae pub]$ sh mktree.sh
>>>: command not found
>>>: command not found
>>>'ktree.sh: line 9: syntax error near unexpected token `{
>>>'ktree.sh: line 9: `gettreelist() {
>>>에러가 나요.
>>>
>>>
>>>http://.../pub/ 로 접속하면
>>>
>>>../
>>>test
>>>index.php 2 KB
>>>mktree.sh 2 KB
>>>
>>>딸랑 저렇게만 나오구요. 아이콘도 안나와요.
>>>그리고 index.php 파일을 지우고 하면
>>>
>>>Forbidden
>>>You don't have permission to access /pub/ on this server
>>>
>>>나옵니다. -_-
>>>
>>>어떻게 하는지 하나도 모르겠네요 ㅠ_ㅠ
>>>
>>>/etc/httpd/conf/httpd.conf 파일에다 .htaccess 에 있는 내용을 넣어야
하는건가요?
>>>
>>>질문을 정리하면요...
>>>
>>>1. # sh mktree.sh 가 안됩니다.
>>>
>>>2. 아이콘이 안나옵니다.
>>>
>>>3. index.php 파일이 없으면 안됩니다.
>>>
>>>4. http://ftp.linuxchannel.net 처럼 상단에
>>>
>>>Index of /
>>>Name Last modified Size Description
>>>
>>>이런것이 나오게는 어떻게 하는가요..
>>
>>========================================
>>
>>1) 아파치 설정 httpd.conf 에서 .htaccess 을 사용가능하게 끔
설정.
>>
>>아마 httpd.conf 에서
>>
>>/ 디렉토리 설정에서
>>
>><Directory />
>> ...
>> AllowOverride None
>></Directory>
>>
>>이렇게 설정되어 있을 겁니다.
>>이 설정을
>>
>><Directory />
>> ...
>> AllowOverride FileInfo
>></Directory>
>>
>>이렇게 FileInfo 로 수정하거나
>>원래의 설정을 그대로 두고 그 바로 밑에
>>
>><Directory /home/www/html/pub>
>> Options FollowSymLinks MultiViews
>> AllowOverride FileInfo
>></Directory>
>>
>>이렇게 추가합니다.(후자
권장)
>>이것은 .htaccess 파일을 사용가능하게끔하는
설정입니다.
>>기타 더 자세한 내용은
>>
>>http://linuxchannel.net/docs/apache-allowoverride.txt
>>
>>에 있습니다.
>>
>>그리고 조금 더 밑에,
>>
>>AccessFileName .htaccess
>>
>>이 부분이 이렇게 되어 있는지 확인하세요(기본값임)
>>
>>
>>2. 아이콘
>>
>>httpd.conf 파일에서
>>
>>Alias /icons/ "/usr/local/apache/icons/"
>>
>>이런 부분만 있으면 됩니다.
>>
>>
>>3. .htaccess 파일 생성
>>
>>아파치를 종료하고 다시 합니다.
>>
>>-- /home/www/html/pub/.htaccess -------------
>>Options +Indexes +FollowSymLinks +MultiViews
>>IndexOptions FancyIndexing FoldersFirst NameWidth=* IconWidth=19
IconHeight=17
>>
>>DirectoryIndex .autoindexnull
>>ReadmeName README.txt
>>HeaderName HEADER.txt
>>IndexIgnore .??* *~ *# HEADER* RCS CVS *,v *,t
>>
>>AddType application/x-httpd-php-source .ph .php .inc .phps .tmpl .sh .patch .diff
.lib
>>AddType text/plain .txt .text .pl .cgi
>>-----------------------------------------------
>>
>>.htaccess 파일을 위의 내용을 그대로 적용합니다.
>>icons 설정은 필요없습니다.
>>저 같은 경우는 master 설정에서 막아놓아서 어쩔수 없이
설정했을
>>뿐입니다.
>>
>>
>>4. index.php 파일은 필요없으니 삭제해도 됩니다.
>>
>>
>>5. tree 만들기
>>
>>그쪽 시스템이 이상이 있는지 쉘자체가 안된것
같네요.
>>
>>그리고 tree 라는 프로그램이 있어야 합니다.
>>
>>$ which tree
>>/usr/bin/tree
>>$
>>
>>없다면 tree-xxx.rpm 파일을 구해서 설치해야 합니다.
>>
>>http://mama.indstate.edu/users/ice/tree/
>>http://rpmfind.net/linux/rpm2html/search.php?query=tree
>>
>>1.3 이상 버전 권장
>>
>>tree 프로그램을 설치했다면,
>>
>>$ pwd
>>/home/www/html/pub
>>$
>>$ tree -f -d > tree.txt
>>
>>이렇게 하면 tree.txt 파일이 만들어집니다.
>>html 파일은
>>
>>$ tree -f -d -H '' > tree.html
>>
>>-H 옵션을 사용할 경우
>>/home/www/html/pub 가 DocumentRoot 이면 -H '' 로
>>/home/www/html 가 DocumentRoot 이면 -H '/pub' 로 사용하면
>>됩니다(A 태그 문제).
>>
>>그리고
>>
>>$ ln -sf tree.txt README.txt
>>
>>이렇게 README.txt 로 링크를 겁니다.
>>
>>마지막으로 웹브라우저로 접근해 보세요.
>
>========================================
========================================
앗.. 제가 실수했네요..
500 은 서버 설정 구문 에러가 맞습니다.
앞의 경우는 그 권한이 없는 설정 지시자가 설정되어
있기때문에
아파치에서는 500 에러를 내게 됩니다.
AllowOverride FileInfo
대신
AllowOverride Options Indexes FileInfo
이렇게 해야 합니다.
또는
AllowOverride All
로 해도 됩니다.
이유는 각 지시자마다 Override 라는 항목이 있는데
예를들어
http://linuxchannel.net/docs/manual/mod/mod_mime.html#addtype
에 보면
AddType 은 Override 가 FileInfo 입니다.
따라서 AllowOverride 에 FileInfo 를 추가해줘야 합니다.
더 예를 들자면,
Options 지시자의 Override 는 Options 이고,
http://linuxchannel.net/docs/manual/mod/core.html#options
IndexOptions 지시자의 Override 는 Indexes 입니다.
http://linuxchannel.net/docs/manual/mod/mod_dir.html#directoryindex
잘모르겠다면
AllowOverride All 로 해도 됩니다.
|