php 스크립트 확장자 없이 사용하기

http://mydomain.com/test/argu1
사이트들을 돌아다니다 보면 위와 같은 주소를 많이 볼 것이다.
대부분은 test부분이 하나의 디렉토리이지만
디렉토리가 아니고 스크립트 페이지일 수 있다.

http://anitype.net/wiki/FrontPage
위 주소는 하이레느님의 위치 대문페이지이다.
이 위키는 MoniWiki기반인데 이 위키는 위키페이지의 주소가 /wiki.php이
다.
하지만 위의 주소를 보면 wiki.php가 아니고 wiki로 되어 있다.
간단한 방법으로 위와 같은 주소를 만드는 방법이 있다.
우선 확장자 없는 PHP파일을 만들어야 한다.
MoniWiki를 예로 들면
#ln -s wiki.php wiki
를 하면 확장자가 없는 PHP파일이 만들어진다.
물론 wiki라는 파일을 만들고 include라는 명령을 이용하여 wiki.php를 포
함하게 만들어도 된다.
그리고 핵심이자 가장 중요한 부분 .htaccess파일을 만들어주어야 한다.
그 내용은
————–

#SetHandler application/x-httpd-php
ForceType application/x-httpd-php

—————
Apache 1.3.26 이전을 사용중이면 주석을 반대로 하면 된다.

이는 Files 구문 뒤에 있는 파일명에 대한 정보를 적어주는 것으로
강제로 PHP스크립트 파일이라고 알려주는 것이다.

이렇게 한 뒤에
http://mydomain.com/wiki/라고 입력하면 위키의 대문페이지가 보일 것이
다.

주의사항 :
이 기능은 아파치의 설정중에서 AllowOveride 속성의 영향을 받는다.
이 속성의 값이 none으로 되어 있으면 .htaccess를 사용할 수 없게되므로
설정자체가 되지 않는다. 이런 경우에는 httpd.conf에 해당내용을 적거나
관리자에게 설정을 바꿔달라고 요청하는 것 이외에는 방법이 없다.

또한 해당하는 페이지가 자기 자신을 호출할때 $PHP_SELF로 호출하지 않
고 직접 파일명으로 호출하는 경우 설정은 가능하지만 원래 파일명의 주소
로 변경이 되기에 이 기능이 쓸모없어질 수 있다.

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.