[완료] lighttpd 웹서버 mod_auth(유저인증) 궁금한점 있습니다.

goderro의 이미지

안녕하세요

lighttpd 포럼에도 검색에도 잘안나와서 이곳에 한번 글 올려봅니다. ^^;

개발 환경은 CentOS 5.5에 lighttpd 1.4.28 버전을 사용하고 있습니다.
현재 진행중인 프로젝트는 cgi를 c로 구현하여 웹페이지를 서비스하는 것 입니다.
lighttpd 기본모듈인 mod_auth 에는 HTTP basic 인증으로 아이디/비번을 입력받아 브라우저 종료시까지 세션유지가 됩니다.

문제는 요구사항중 session timeout 기능을 넣어 일정시간동안 응답이 없을시 자동 로그아웃 처리 되도록 하는것 입니다.
1. 공식페이지 문서를 찾아봐도 이와같은 옵션은 없는것 같은데 혹시 이부분 설정이 있다면 어떻게 하는지 아시는분 계시는지요.

만약 개선이 어렵다면 로그인/로그아웃 기능을 새로 만들어야 될것 같습니다.
2. 새로 만들어야 된다면, mysql 을 사용하지 않고 cgi/c 를 사용하여 구현할수 있는 가장 좋은 방법은 무엇일까요..?
mysql 을 이용한 DB 처리방법이 편한건 알고 있습니다만 php 라 cgi/c에서 될지 모르겠네요..

읽어주셔서 감사합니다. 혹시 저와 비슷한 경험을 하신분이 있다면 알려주시면 큰 도움이 되겠습니다.
감사합니다 ^^

wariua의 이미지

basic 방식의 경우 인증을 일단 거치고 나면 웹브라우저가 HTTP 요청을 보낼 때마다 사용자 이름과 암호를 평문으로 함께 전송합니다. 웹브라우저가 종료할 때까지 계속... 따라서 '일정 시간 후 자동 로그아웃' 기능은 둘째 치고 '로그아웃' 기능조차 구현이 불가능합니다. 민감한 정보가 평문으로 전송된다는 문제점도 있구요.

PHP에서 세션을 관리하는 방식에서처럼 쿠키를 사용하고 서버의 저장소 어딘가에 세션 정보(사용자 이름, 마지막 활동 시각 등)를 저장해야 일반적인 세션 관리 기능을 구현할 수 있습니다. 서버의 저장소는 파일 시스템이 될 수도 있고 DB가 될 수도 있겠죠.

C로 CGI를 구현하신다면 이런저런 이유로 CGI 지원 라이브러리를 사용하시게 될 텐데, 보통은 그 라이브러리에 세션 관련 API가 포함돼 있어서 그걸 사용합니다.

$PWD `date`

goderro의 이미지

PHP로는 손쉽게 session을 사용했던 기억이 나네요.
왠만하면 웹서버에서 제공되는 기본모듈을 사용하고 싶었는데 이래저래 이슈가 많은것 같습니다.
도움 감사합니다.. ^^

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.