회원로그인
16년 전
웹을 통해서 특정 페이지나 특정 디렉토리를 사용자가 엑세스 할 경우 엑세스 할 파일을 불러들이기 전에 미리 지정한 cgi화일을 먼저 호출하게끔 하는게 auth_actions모듈이다.
그걸 응용해서 사용자가 직접 url을 쳐서 인증없이 들어오는 경우를 막는 방법이다.
(다른 방법으로도 응용이 가능하다. ex)페이지 카운터, 통계 etc)
.htaccess화일에서 화일을 엑세스 하려면 authTest.php라는 화일을 거쳐야 되게 했고 authTest.php에서는 세션이 있는지 검사 한다. 이때 세션이 있으면 페이지를 보여준다.
/test/
- authTest.php
- seoul.gif
- .htaccess
*************** .htaccess *********************
AddHandler my-file-type .gif
Action my-file-type /test/authTest.php
*************** authTest.php ******************
<?
session_start();
if(!session_is_registered(sess_userid))
{
echo "세션이 없으면 이미지를 볼수 없어염. 리프레쉬 ~~";
$session_userid = "u2love";
session_register(sess_userid);
}
exit;
header("Expires:Mon, 26, Jul 1997 05:00:00 GMT"); //date in the past
header("Last-Modified: " . gmdate("D, d M Y H:i:s"), "GMT"); //always modified
header("Cache-Control: no-store, no-cache, must-revalidate"); //HTTP/1.1
header("Cache-Control: post-check=0, pre-check=0", false);
header("Content-Type: gif");
header("Pragma: no-cache");
header("Content-Disposition: inline; filename=../$_SERVER[REQUEST_URI]");
readfile("../" . $_SERVER[REQUEST_URI]);
?>
참고]
http://httpd.apache.org/docs-2.0/mod/mod_actions.html
추천 : 397
추천
목록