가상 경로 관련해서 질문 드립니다.

shilf의 이미지

다음 대용량 파일 전송에 보면
전송후 보여주는 경로가 실제 경로가 아닌
가상 경로인것 같습니다.

단순히
www.test.co.kr/abce.abc
를 어떻게 암호화해서 올린다고해도
www.test.co.kr/abce.5sklef8ik%d%dfj.dhabc
뭐 이런식으로 바뀐다고 이게 가상 경로가 아니지 않습니까?

실제 보여주는 주소랑
연결되는 주소가 다른것이 가상 경로 아닙니까

그럼 가상 경로를 만들려면
웹서버에서 id?=1dkkf 뭐 이런 php로 해서
처리하는겁니까?
다음 주소는 그런식으로 안나오던데요.

질문이 계속해서
두서가 없군요..

죄송하지만. 조금씩만이라도 가르쳐주세요~

ssehoony의 이미지

웹서버에 파일을 기록할때 파일명을 변경하는것이 일반적입니다.
기존 파일명과 겹치지 않도록 unique 하게 생성하고
확장자가 .php 같은 웹서버가 실행하는 스크립트와 같은건은 다른 확장명으로
변경을 해서 최대한 해킹을 어렵게 하기도 하죠.

그리고 %75 이런식의 주소명은 가상이 아니고, 특수문자를 인식하기 위해 치환하는 것입니다. 일종에 C같은데서 문자열에 " 를 넣기 위해서 \" 를 입력하는 것과 비슷한 이유입니다.

sh.의 이미지

단순히 특수문자를 치환하는게 아니라 실제로 영구적이지 않은 링크를 통해서 다운로드 하도록 하기도 합니다.
같은 url로 계속 다운로드하지 못하도록이요.. 제가 구현해본적은 없는데 언젠가 문서를 본 적이 있는것 같습니다.
서버상에 실제 파일은 따로 저장해두고.. 심볼릭 링크를 임시로 걸어준다던가
아니면 정해진 규칙의 url을 생성해서 보여주고.. 요청이 들어오면 mod_rewrite나 서버측의 스크립트(php같은)를 이용해서 원래의 주소로 변환을 한다던가 하는 방식일겁니다.

shilf의 이미지

두분 답변 정말 감사합니다.

파일명을 특정한 방식으로 변경했다가 되돌리는건 어느정도 이해할수 있을것 같습니다.

근데 경로 자체도 변경이 될수 있습니까
sdf/asdf/tt.x 를
sdf/tt.x
로 표시하고 클릭하면 위에 경로에 것을 다운받도록 하는것요.

아까 심볼릭 링크 말씀하셨는데
심볼릭 링크를 만드는 법에 대해 궁금합니다.
일반적으로 링크 다운로드 하면
정말 링크만 (0kb)다운 되지 않습니까?

그리고 주소를 변경했다 다시 돌리는 알고리즘을 만들면
그건 파일이 저장된 서버가 아니라 웹서버에서 돌아가야하는것
맞습니까
일반 사용자가 그냥 오른쪽 클릭으로 다운 받으면
돌아가는데 문제가 없을런지.

일단 조금씩 테스트를 해봐야겠네요.^^;

답변 감사드립니다.

익명 사용자의 이미지

shilf wrote:
...

아까 심볼릭 링크 말씀하셨는데
심볼릭 링크를 만드는 법에 대해 궁금합니다.
일반적으로 링크 다운로드 하면
정말 링크만 (0kb)다운 되지 않습니까?

...

링크 따라가서 본 파일 다운로드 받을 수 있습니다. (하기 나름이죠)
FollowSymLinks 로 검색해 보아요 (아파치 한정)

댓글 달기

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