none
& 기호가 & 로 변경되기 때문에 발생하는 문제. RRS feed

  • 질문

  • 브라우저에서 & 기호를 보안상의 이유로 &로 변경하는 것으로 알고 있는데

    CGI를 사용하는 환경에서는 이것 때문에 파라미터를 전달할 수 없는 문제가 발생합니다.

    문의사항에 대해서 가장 간단한 예제를 들자면

    <a href=www.microsoft.com/index.cgi?lcode=11&product=abc>

    와 같은 코드는

    <a href=www.microsoft.com/index.cgi?lcode=11&amp;product=abc>

    와 같이 변환되기 때문에

    실제 링크에서는 product=abc 가 인수로 넘어가지 않기 때문에 CGI 서버에서 처리할 때 에러가 발생합니다.

    에디터에서 브라우저 랜더링 결과를 받을 때 마다 해당 코드를 검사해서 href 값을 치환해주는 것으로 대응은 가능하지만

    성능저하의 문제가 발생할 수 있기 때문에 위와 같은 대응은 어려운 상황입니다.

    회피책이 있을지요..?


    IONCommunications QA Enginner / Assistance Manager
    2011년 2월 28일 월요일 오전 4:23

모든 응답

  • 이해가 조금 안 가는데요.

    <a href="www.microsoft.com/index.cgi?lcode=11&product=abc">로 하면 치환 문제가 발생하지 않을 것 같습니다만..?

    2011년 4월 13일 수요일 오전 6:08
  • 회신 감사합니다.

    회신 주신 내용처럼 &amp; 를 & 로 치환해서 저장하면 간단한 문제입니다만
    그렇게 할 경우 소스 전체에서 &amp;를 &로 치환하거나
    &amp;를 &로 변경해야하는 부분과 변경하지 않고 그대로 사용해야 하는 부분을 구별하는 로직이 필요하게 됩니다.
    그런데 이런 로직이 case by case라서 모든 사용자가 코드 작성 표준을 지키지 않는 이상 사실상 무용지물이라는 것은 잘 아실 것 같습니다.
    게다가 보안상의 문제로 & 기호를 &amp;로 브라우저가 변경하는 것이기 때문에
    &amp;를 임의로 &로 치환하는 것도 솔루션 제조사의 입장에서는 수용하기 어려운 해결책이구요.
    ㅎㅎ;; 제가 답이 없는 문제를 갖고 이러고 있는 것 같기도 합니다;;


    IONCommunications QA Enginner / Assistance Manager
    2011년 4월 15일 금요일 오전 2:41