급합니다 ㅜ 웹에 관련된 질문입니다.

gaeddong2의 이미지

제가 어느 특정 웹페이지에 접속을 하려 할때, 제가 만들어놓은 HTML 로그인 페이지로 리다이렉션을 시킵니다. 그 후에 php,mysql을 연동하여
ID PW 작성 후 로그인 버튼을 누릅니다. 그 후에 로그인이 됬건 안됬건 로그인 버튼이 눌리게 되면 전에 요청했던 페이지로 돌아가려 합니다.

그런데, 전에 요청 페이지로 돌아가지 않고 리다이렉트 시켰던 방문 기록 때문인 것 인지 자꾸 다시 로그인 페이지만 뜨게 됩니다.
어떻게 해야 전에 요청했던 페이지로 이동이 되는지 알고싶습니다.

Proxy를 통해서 특정 웹페이지가 들어오는 조건을 주어 제가 만들어놓은 페이지로 이동시키게 했습니다.
웹 페이지 서버는 아파치 서버입니다.

Anermy의 이미지

$_SERVER['HTTP_REFERER']
이전 유입경로 인건 아시는거 같고.
(혹, 처음 접속한 페이지가 로그인 페이지는 아니시겠죠.)

리다이렉트 되는 페이지가 로그인 페이지면 그냥 메인 또는 특정 페이지로 이동을 시키는게 속 편합니다.

기회는 준비된 자에게만 온다.
(twitter @httpds)

gaeddong2의 이미지

제가 프록시를 통해서 요청한 웹말고 제가 만든 로그인 페이지로 리다이렉트를 해서 일단 제가원하는 페이지를 띄우고
전에 요청했던 페이지로 다시 돌아가려고 합니다.

php에서 웹 요청 메시지를 해주엇는데, 계속 로그인페이지가 반복되서 뜹니다.
proxy를 통해하지않고, 그냥 일반 인터넷으로 똑같은 요청을 했을 때도 똑같이 로그인 페이지가 뜹니다.

방문기록에 남아서그런거같아서, 혹시 이런문제를 어떻게 해결해야하나요, 다시 요청을 하는데 제가 만든페이지말고 진짜 요청된 페이지로 가는거요.

Anermy의 이미지

1. 리다이렉트시 파라미터를 하나 가지고 로그인페이지로 유입합니다.
e.g. http://kldp.org/?rdurl=$_SERVER['HTTP_REFERER']

2. 로그인페이지에서 (VIEW) hidden 으로 폼값에 넣어줍니다. (이때 rdurl 이란 변수에 값이 없으면 $_SERVER['HTTP_REFERER'] 를 넣던지요.)
<input type=hidden name='rdurl' value='<?=$_GET['rdurl']?>'>

3. 로그인 action 처리시 rdurl 로 이동시킵니다.

보통은 이런 로직이지요.

기회는 준비된 자에게만 온다.
(twitter @httpds)

송효진의 이미지

저는 로그인이 필요하면 401 헤더를 뿌리고 url 을 유지한 채 로그인 폼을 뿌려줍니다.

<?php

if(notlogined()) { header('HTTP/1.1 401 unauthorized'); echologinform(); exit; }

// 로그인 된 다음에~

?>

gaeddong2의 이미지

감사합니다.

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.